Repository navigation
Control: action.run lists created objects that show a publish late (cx-9ce.30) - #20107
Conversation
…show yet (cx-9ce.30) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ore listing them (cx-9ce.30) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…uest deadline (cx-9ce.30) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…cx-9ce.30) A created object that never shows (closed in the same run) is left out of created instead of turning ran into a timeout. The wait lives on ControlSnapshotStore so ControlRouter does not grow. cli.md Remaining 8 and 13 marked done. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…stead of waiting forever (cx-9ce.30) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
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. Comment |
|
Not verified: macOS jobs did not run: compile and app tests were skipped on CI passes on Written by |
Summary
action.runsometimes answered with an emptycreatedlist, for examplecmux tab newunder load (plans/cmux-next/cli.md Remaining 13). The reply looks up each created object in the snapshot that reflects the run's daemon sequence. But the app can build a new object a publish after the event that moved the sequence, so the lookup came up empty.ran: truerather than timing out.ControlSnapshotStorewaits can now take any condition (snapshot(where:deadline:)); the sequence barrier uses the same path. The created-object wait lives on the store (ControlSnapshotStore+Created.swift), soControlRouterdoesn't grow.ran: true), was already done: the router refuses an unknown target once the topology is loaded (ActionRunTargetTests), andActionScoperefuses an unknown tab, pane or workspace in the handler.cli.mdnow marks items 8 and 13 done.Testing
Behavior tests
ActionRunCreatedTests(CmuxNextControl). Each runsaction.runthroughControlRouterwith an executor that creates a tab the way a loaded app can.createdmust list it.ran: truewithcreated: [].All runs are fleet
run-swift-testing-suites.shon the full package:createdwas[].timeoutafter 1999 ms. The review predicted this: the first fix's wait ignored the request deadline.PasswordManagerRouteTeststimed out in the four runs with the fix on the older base (73434cf). Its action succeeds and its 20 s wait for the Passwords tab expires. It never callsaction.runor waits on the control snapshot store. #20103 documents the same fleet timeouts in it and inPinnedPageTests. On base it is skipped (no published same-tree cmux-tui), so base gives no comparison. On the merged head (1d96e46, base merged with #20103), the full package run had no failing suite:PasswordManagerRouteTestsran (not skipped) and passed in 1 s, and bothActionRunCreatedTestspass.Bead: cx-9ce.30
Changelog
cmuxcommands that create something (for examplecmux tab new) no longer sometimes report an empty created list.🤖 Generated with Claude Code