Skip to content

fix(acp): preserve routing for edited messages - #4741

Open
loganj wants to merge 9 commits into
mainfrom
fix/edit-message-agent-mentions
Open

loganj wants to merge 9 commits into
mainfrom
fix/edit-message-agent-mentions

Conversation

@loganj

@loganj loganj commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

🤖

Summary

Message edits are auxiliary events, but replies, reactions, setup nudges, and queued delivery must remain anchored to the original visible message. This foundation slice establishes that routing contract before default activation and native mid-turn steering are introduced.

  • Resolves an edit's original message and thread root before dispatch.
  • Keeps edit-triggered reactions and replies attached to the visible original event, including cancellation and setup-mode paths.
  • Replays queued events chronologically, then isolates edit delivery at its routing boundary so an edit cannot inherit another event's reply target.
  • Falls back to the edit's target ID when the original cannot be fetched within the bounded lookup.

Stack position

1 of 3 — foundation, based on main.

Next: #6131 (default activation), then #6132 (native steer and lifecycle fencing).

Related issue

None found.

Acceptance gates

  • ACP unit and lifecycle tests pass locally: cargo test -p buzz-acp --all-targets (787 unit tests and 9 lifecycle tests)
  • ACP compilation passes locally: cargo check -p buzz-acp
  • Required CI checks pass on foundation head 0a70cb739bc029d972166781389bb944e7695e0f
  • Bottom-up stack review is complete

@loganj
loganj force-pushed the fix/edit-message-agent-mentions branch 2 times, most recently from a47e638 to ac89510 Compare August 4, 2026 16:48
@loganj
loganj marked this pull request as ready for review August 4, 2026 18:15
@loganj
loganj requested a review from a team as a code owner August 4, 2026 18:15

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ac89510841

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/config.rs Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f1255ee648

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/config.rs Outdated
@loganj
loganj force-pushed the fix/edit-message-agent-mentions branch 2 times, most recently from 4271fc7 to a0ec518 Compare August 10, 2026 17:31

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a0ec518e1f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/lib.rs Outdated
@loganj
loganj force-pushed the fix/edit-message-agent-mentions branch from a0ec518 to c2573e3 Compare August 10, 2026 18:32

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c2573e3909

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/lib.rs Outdated
Comment thread crates/buzz-acp/src/lib.rs Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 12d94766ab

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/lib.rs Outdated
Comment thread crates/buzz-acp/src/lib.rs Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 5fced1e6e0

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/pool.rs

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 329af7704d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/lib.rs Outdated

@wesbillman wesbillman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review submitted by Carl on Wes's behalf. I found an exact-once race in the asynchronous edit preparation path: in-flight deadline recovery can dispatch the reserved edit normally, after which the late preparation can steer the same edit into the replacement turn. Please bind prepared work to the turn/reservation it was created for and discard completion after that reservation has been recovered or consumed.

Comment thread crates/buzz-acp/src/lib.rs Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1eddb28255

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/lib.rs Outdated
Comment thread crates/buzz-acp/src/lib.rs Outdated
@loganj

This comment has been minimized.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 2a625232e3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/lib.rs Outdated
@loganj

This comment has been minimized.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a6f0fc0c0f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/pool.rs
Comment thread crates/buzz-acp/src/lib.rs Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ea2542de81

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/queue.rs
Comment thread crates/buzz-acp/src/lib.rs Outdated
@loganj
loganj force-pushed the fix/edit-message-agent-mentions branch from ea2542d to 6b6a033 Compare August 12, 2026 18:38
@loganj

loganj commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator Author

@codex review

@loganj

loganj commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator Author

The requested exact-once reservation fix is present on current head 6b6a033f0956454988bfefed4ec13eca00ad4637, with full-branch validation and independent Royals review complete. @wesbillman could you please re-review or clear the stale requested-changes gate when able?

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 6b6a033f09

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/queue.rs Outdated
Comment thread crates/buzz-acp/src/queue.rs
@loganj

loganj commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 22a0ffdafe

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/queue.rs Outdated
@loganj
loganj force-pushed the fix/edit-message-agent-mentions branch from 22a0ffd to 2334ad7 Compare August 12, 2026 20:09

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 2334ad7ebc

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/pool.rs
@loganj

loganj commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 8a04a800e2

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/lib.rs Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 23b05e1f98

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/queue.rs
@loganj
loganj force-pushed the fix/edit-message-agent-mentions branch from 23b05e1 to ab8411f Compare August 13, 2026 16:18

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ab8411fbde

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/lib.rs Outdated
Comment thread crates/buzz-acp/src/pool.rs
@loganj
loganj dismissed wesbillman’s stale review August 13, 2026 16:40

The exact-once race identified by this review was fixed, regression-tested, replied to, and its conversation resolved at current head ab8411f.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 5c7f5ac8dc

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/lib.rs Outdated
Comment thread crates/buzz-acp/src/lib.rs Outdated
Comment thread crates/buzz-acp/src/pool.rs Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: bfa6469640

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/pool.rs
Comment thread crates/buzz-acp/src/pool.rs Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 5e03c2c6fe

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/buzz-acp/src/config.rs Outdated
Comment thread crates/buzz-acp/src/lib.rs
@loganj
loganj force-pushed the fix/edit-message-agent-mentions branch from 5e03c2c to 0a70cb7 Compare August 17, 2026 15:03
@loganj loganj changed the title fix(acp): wake agents for mentions added by edits fix(acp): preserve routing for edited messages Aug 17, 2026
@loganj
loganj marked this pull request as draft August 17, 2026 15:04
@loganj
loganj marked this pull request as ready for review August 19, 2026 11:12
@loganj
loganj force-pushed the fix/edit-message-agent-mentions branch from 6c5ef8b to 81f8baf Compare August 19, 2026 14:38
Brother Darryl and others added 9 commits August 19, 2026 14:58
Signed-off-by: Brother Darryl <146fb160a3266e6165bfa385f6048c975eda9e21cf65da097a0b5ea7952532a5@buzz.block.builderlab.xyz>
(cherry picked from commit 914418d)
Signed-off-by: Larry <8cf5a83f590ec0955b11647d1c88f796a98e088c30a492c58e0e46c3026ae7a4@buzz.block.builderlab.xyz>
Signed-off-by: Brother Darryl <146fb160a3266e6165bfa385f6048c975eda9e21cf65da097a0b5ea7952532a5@buzz.block.builderlab.xyz>
(cherry picked from commit fa5a74e)
Signed-off-by: Larry <8cf5a83f590ec0955b11647d1c88f796a98e088c30a492c58e0e46c3026ae7a4@buzz.block.builderlab.xyz>
Signed-off-by: Larry <8cf5a83f590ec0955b11647d1c88f796a98e088c30a492c58e0e46c3026ae7a4@buzz.block.builderlab.xyz>
(cherry picked from commit acd0a06)
Signed-off-by: Larry <8cf5a83f590ec0955b11647d1c88f796a98e088c30a492c58e0e46c3026ae7a4@buzz.block.builderlab.xyz>
Signed-off-by: Larry <8cf5a83f590ec0955b11647d1c88f796a98e088c30a492c58e0e46c3026ae7a4@buzz.block.builderlab.xyz>
(cherry picked from commit 9811b89)
Signed-off-by: Larry <8cf5a83f590ec0955b11647d1c88f796a98e088c30a492c58e0e46c3026ae7a4@buzz.block.builderlab.xyz>
Signed-off-by: Larry <8cf5a83f590ec0955b11647d1c88f796a98e088c30a492c58e0e46c3026ae7a4@buzz.block.builderlab.xyz>
(cherry picked from commit ab8411f)
Signed-off-by: Larry <8cf5a83f590ec0955b11647d1c88f796a98e088c30a492c58e0e46c3026ae7a4@buzz.block.builderlab.xyz>
Import the edit kind only for explicit setup routing coverage; default subscriptions remain unchanged in this foundation slice.

Signed-off-by: Larry <8cf5a83f590ec0955b11647d1c88f796a98e088c30a492c58e0e46c3026ae7a4@buzz.block.builderlab.xyz>
Sort replayed events chronologically before draining and dispatch each edit independently so its original-message route cannot be hidden by a later event.

Signed-off-by: Larry <8cf5a83f590ec0955b11647d1c88f796a98e088c30a492c58e0e46c3026ae7a4@buzz.block.builderlab.xyz>
Signed-off-by: loganj <loganj@squareup.com>
Signed-off-by: Larry <8cf5a83f590ec0955b11647d1c88f796a98e088c30a492c58e0e46c3026ae7a4@buzz.block.builderlab.xyz>
Signed-off-by: loganj <loganj@squareup.com>
@loganj
loganj force-pushed the fix/edit-message-agent-mentions branch from 81f8baf to d4ed2d5 Compare August 19, 2026 15:07

@jedwards27 jedwards27 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:bot: Jude’s code review agent

Verdict: REQUEST CHANGES

Reviewed: bbd20fae75ecc3bd7a83cc12a65379fac22a2b79..d4ed2d5d3a49067d61049fff79de62b7ab0d4a78 (exact live head)

Risk: High — this changes ACP messaging identity across async fetch, queue/cancellation, reactions, setup mode, and terminal recovery.

Blocking findings

  1. Setup-mode edit routing cannot execute in the live listener. crates/buzz-acp/src/setup_mode.rs:412-415 rejects every kind except stream messages and workflow approvals before mention matching and publish_setup_nudge, while the default setup rule at setup_mode.rs:525-528 also omits kind 40003. Consequently, an eligible edit mentioning an unavailable agent never reaches the new original/root routing code. The helper-only tests at setup_mode.rs:1065-1140 do not cross either production gate.

    Author action: admit KIND_STREAM_MESSAGE_EDIT in the setup listener and its default subscription, define the intended kinds_override behavior, and add a listener-level regression proving a mentioned edit reaches nudge publication at the original/root.

  2. Terminal failure notices for edits detach from the visible request. All auth-error, hard-timeout, and retry-exhaustion paths call spawn_failure_notice, which derives routing by applying parse_thread_tags to the raw last event (crates/buzz-acp/src/lib.rs:3996-4010). That parser intentionally ignores the edit's bare target e tag (crates/buzz-acp/src/queue.rs:964-982), so post_failure_notice receives no root and publishes at channel top level (crates/buzz-acp/src/pool.rs:4633-4656). An edit-triggered terminal error therefore loses the original-message/thread routing this PR establishes, leaving recovery guidance detached in a busy channel.

    Author action: carry the resolved edit route into terminal-result handling (or resolve it on that bounded path), route notices to the original ID/root, and add signed-event tag assertions for terminal failure after top-level and threaded edits.

Verification owner: author for both fixes and biting regressions; reviewer for exact-head delta review and mutation/negative proof that bypassing each production route fails its test.

Validation

At clean detached HEAD d4ed2d5d3a49067d61049fff79de62b7ab0d4a78:

  • git diff --check bbd20fae75ecc3bd7a83cc12a65379fac22a2b79...HEAD — pass.
  • . ./bin/activate-hermit && cargo test -p buzz-acp --all-targets — pass: 828 unit tests and 9 lifecycle tests, 0 failures.
  • Required GitHub checks — all applicable checks pass at this head.
  • Authenticated reviewer jedwards27; PR author loganj.

The green suite confirms existing behavior but has no listener-level setup-edit test and no terminal failure-notice edit-routing assertion, so it does not refute either reproduced source-path defect.

Manual/native evidence: none; these are deterministic ACP event-routing contracts best established with Rust listener/signed-event tests rather than UI screenshots.

Residual risk: live relay setup-mode and terminal-failure journeys were not exercised because both source paths are currently defective. Re-run risk-shaped integration evidence after the fixes. Any new head requires delta review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants