Skip to content

fix(cmux-tui): fence repeated ABA echo keys - #11377

Closed
lawrencecchen wants to merge 3 commits into
fix/pr11002-purge-state-wave137from
fix/pr11002-aba-wave183
Closed

lawrencecchen wants to merge 3 commits into
fix/pr11002-purge-state-wave137from
fix/pr11002-aba-wave183

Conversation

@lawrencecchen

@lawrencecchen lawrencecchen commented Sep 1, 2026 •

Copy link
Copy Markdown
Contributor

Stacked follow-up for PR #11002.

The durable echo key previously hashed only the current semantic state and its predecessor. A repeated Working → Blocked → Working → Blocked cycle reused the earlier Blocked key and could replay or reject the later transition.

This adds a durable monotonic resource revision to the transition key. Immediate identical reports still coalesce before key generation.

Commits:

  • 881a3ac adds the failing repeated-ABA behavior test.
  • e378a13 adds the fix.

Validation: git diff --check; hosted cmux-tui verification is required because local Cargo/rustc is prohibited.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.


Summary by cubic

Fixes repeated ABA echo key reuse in cmux-tui by including a durable monotonic resource revision in the transition key, so repeated Working → Blocked → Working cycles no longer reuse an earlier key and can replay or reject the later transition.

Written for commit 3a62c0e. Summary will update on new commits.

Review in cubic

@vercel

vercel Bot commented Sep 1, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
cmux166 Canceled Canceled Sep 1, 2026 3:31pm UTC
cmux41 Canceled Canceled Sep 1, 2026 3:31pm UTC

@coderabbitai

coderabbitai Bot commented Sep 1, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Team

Run ID: 3a25878f-1dfe-417d-9c9b-bc85d6607a0a

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@lawrencecchen

Copy link
Copy Markdown
Contributor Author

Closing as superseded by current main (6d67bc5). The PR relies on the old agent-report-echo-v4 transition-key path in mux.rs. Current main replaced that path with durable resource mutation revisions and hook-fence checks, so the ABA hunk has no target context after refresh. Current main also carries lifecycle-fence coverage for delayed old session starts and late events. Reapplying these three commits onto current main cannot produce a safe, narrow patch.

This branch was successfully deployed

2 active deployments
Preview – cmux41 — 3a62c0e4 Deployed Sep 1, 2026 by vercel[bot]
Preview – cmux166 — 3a62c0e4 Deployed Sep 1, 2026 by vercel[bot]
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.

1 participant