Repository navigation
ask-6ef2624788: fence exact workflow prompt cancellation durably - #33812
Conversation
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-62212972239ec6a32fed
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-62212972239ec6a32fed
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-62212972239ec6a32fed
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-62212972239ec6a32fed
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-62212972239ec6a32fed
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-62212972239ec6a32fed
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-62212972239ec6a32fed
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-62212972239ec6a32fed
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-62212972239ec6a32fed
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-62212972239ec6a32fed
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-62212972239ec6a32fed
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-62212972239ec6a32fed
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d8021dc40c61c7f7b852
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d8021dc40c61c7f7b852
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d8021dc40c61c7f7b852
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Review App of this head (app.zip, kept 1 day)
web and size checks: green Shipped in:
|
|
Review (subagent claude-opus-5-5 medium): BLOCK at 867f561 Visual verdict: unchanged by this diff (no UI code). Checked: the descendant fence in
Follow-ups:
|
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d8021dc40c61c7f7b852
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d8021dc40c61c7f7b852
Co-authored-by: Codex <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d8021dc40c61c7f7b852
|
Review (subagent claude-opus-5-5 medium): SHIP at 2cdab54 Visual verdict: unchanged by this diff I re-checked the earlier blocking finding at 867f561 using Follow-ups:
|
|
Found 2 test failures on Blacksmith runners: Failures
|
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
Leo-ask: ask-6ef2624788
Leo asked: “go do all those/help out where you can + examine how you can improve yourself and your available options and capabilities and speed”.
Pausing a workflow fences its accepted prompt and automatic retry descendants, including a prompt dequeued before its turn is installed. A failed journal write or flush returns an error; the stop is cached and acknowledged only after its tombstone reaches stable storage and is readable. Malformed history and a torn log tail preserve ordinary next-person prompts and durable stop restoration.
The additive event needs no journal migration. Lock order remains retry state → append → turn. Unrelated retries and background work are preserved.
Validation
9995846344b2c17280e67237077425f87f235cee: fleet run 41636505772,cargo test -p acpmux exact_prompt_stop --lib: three passed; persistence regression failed as expected with “stop acknowledged despite failing persistence operation 1”.2cdab546c4dc789c8624ba9e0ee8017d50d8a41brepairs the malformed-history blocker identified in independent review. A real LocalStore regression verifies Stop, the next ordinary prompt and tombstone restoration after malformed and unterminated records.exact_prompt_stop(5),prompt_accept_tests(3),turns_copy_stop_tests(10), andauto_resume::tests(8) at the final head; all selections passed.2cdab546c4dc789c8624ba9e0ee8017d50d8a41b.Prior art: #31709, #31593, #28859, #30526, #30439, #30280, #30157, #29879, #27924, #29502, #29175, #28111, #28503, #28099, #28477 were read at their source diffs. The parent lane acknowledged remaining mandatory prior art and open #33791.
Review follow-ups: #33840 (indexed scans), #33841 (origin-scoped subagent retries), and #33842 (idempotent repeated Stop); the native workflows lane owns them.
Risk: exact-stop admission reads a lazy per-session tombstone set. Storage read errors fail admission closed; malformed records are skipped, and acknowledgements verify a readable durable boundary. Existing cancellation escalation remains in place.
Changelog
none
Agent session: agent session