Skip to content

scripts: live check that an agent chat moves between two cmux-next builds (cx-xtg0.8) - #19423

Merged
teamleaderleo merged 2 commits into
feat-cmux-nextfrom
op-next-steering/chat-transfer-live
Oct 11, 2026
Merged

teamleaderleo merged 2 commits into
feat-cmux-nextfrom
op-next-steering/chat-transfer-live

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Oct 11, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

scripts/cmux-next/chat-transfer-live.py is a live, end-to-end check that session.transfer.pull (#19359, #19364) moves an agent chat between two running cmux-next builds with its history, queue and draft. It uses the acpmux test agent, so it needs no real agent and no credentials. It drives each build's control socket and acpmux the way the app does:

  1. Build A holds a chat with a reply, a running turn, two queued prompts and a draft, shown in A's chat tab.
  2. Build B pulls it with interrupt.
  3. It checks that B shows the chat in a bound tab, has the history, runs the queue once and in order, and holds the draft; that A's tab closed and A's copy is closed, having run none of the queue; and that a second pull moves nothing.

Testing

Ran on one fleet DEV build (twice; the second run after the review fixes) of feat-cmux-next (ffd9304, which includes #19364), launched in two capture slots of one Mac mini: RESULT PASS, every check ok. It finds each build's acpmux home by its exact build tag, and puts each home's config.json back after the run.

ok   A's tab shows the chat and B lists it as a chat record
ok   the record names A's acpmux socket
ok   A's chat has two prompts queued behind its running turn
ok   the pull moved the chat
ok   B shows the chat in a tab bound to its session
ok   A's tab for the chat closed
B user messages ['hi', 'until-cancel', 'queued a', 'queued b']
ok   B has the history and ran the queue once, in order
ok   B holds the draft ('unsent words')
ok   A's acpmux has the chat closed (closed)
ok   A ran none of the queue (['hi', 'until-cancel'])
ok   a second pull moves nothing
RESULT PASS

Found on the way, not fixed here: a chat whose folder no longer exists on the taking machine is refused (correct), but the app shows acpmux's CLI wording ("pass a new cwd via fork or edit session.json"). Follow-up: cx-xtg0.10.

scripts/verify-local.py: the swift-syntax, localization, localization-defaults and package-groups checks fail on files this PR does not touch (Linux host, base state). No app code changes.

Changelog

none

closes cx-xtg0.8

🤖 Generated with Claude Code

…ilds (cx-xtg0.8)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 11, 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: Repository: manaflow-ai/cmux/.coderabbit.yaml
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: ef9f44cf-3104-46ec-a073-8bb6f9c89826

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
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

…and puts its config back

Review fixes: exact tag slug and one home per build, B's daemon differs from A's;
config.json is never reset on a parse error, written atomically and restored after the
run; tab checks need a snapshot; the queue is checked again after it settles; the second
pull must say there is nothing to move; an interrupted run is not a PASS.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@teamleaderleo
teamleaderleo merged commit a9b1b66 into feat-cmux-next Oct 11, 2026
19 of 20 checks passed
@teamleaderleo
teamleaderleo deleted the op-next-steering/chat-transfer-live branch October 11, 2026 14:37
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