perf(cmux-tui): replay durable notices without a temporary vec - #11026
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 10 included reviews per hour; 2 remain after this review. 📝 WalkthroughWalkthroughThe durable notice replay path now clones retained notices individually. The replay test emits and verifies contiguous notices 42 and 43 after resuming from cursor 41. ChangesDurable notice replay
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This localized change removes a temporary allocation while preserving durable-notice replay order and queue behavior; no actionable merge-blocking risk remains beyond normal checks and review. 🚥 Pre-merge checks | ✅ 24 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (24 passed)
Full details: Cmux Swift Actor IsolationExplanation PASS — The pull-request diff changes only Full details: Cmux Swift Blocking RuntimeExplanation PASS: The pull request changes only Full details: Cmux Browser Automation Off-MainExplanation PASS: The pull-request diff changes only Full details: Cmux Expensive Synchronous LoadExplanation PASS: The pull request changes only Full details: Cmux Cache Substitution CorrectnessExplanation PASS: The PR diff changes only Full details: Cmux No Hacky SleepsExplanation PASS. The complete PR diff changes only Full details: Cmux Algorithmic ComplexityExplanation PASS. The complete PR diff changes only Full details: Cmux Swift ConcurrencyExplanation PASS: The pull request changes only Full details: Cmux Swift `@Concurrent`Explanation PASS. The pull request changes only Full details: Cmux Swift Package BoundariesExplanation PASS: The pull request changes only Full details: Cmux Swiftpm LockfilesExplanation PASS: The pull request changes only Full details: Cmux Swift LoggingExplanation PASS: The pull request changes only Full details: Cmux User-Facing Error PrivacyExplanation PASS: The diff changes only retained-notice replay mechanics and test coverage. The production change clones retained events by index and adds no user-facing error, alert, command output, or recovery text. The added notice strings and assertions are test-only, and they contain no vendor names, provider-specific details, credentials, tokens, headers, or raw diagnostic dumps. Existing provider error formatting is unchanged. Full details: Cmux Full InternationalizationExplanation PASS. The pull request changes only Full details: Cmux Swiftui State LayoutExplanation PASS. The PR diff against main changes only Full details: Cmux Architecture RethinkExplanation PASS: The pull request changes only Full details: Cmux Swift Auxiliary Window Close ShortcutsExplanation PASS. The pull request changes only Full details: Cmux Source ArtifactsExplanation PASS — The complete topic diff changes only Full details: Cmux No Test Or Debug Seam In Production SourceExplanation PASS: The pull request changes only Full details: Cmux No Ambient Global StateExplanation PASS: The pull request changes only Full details: Description checkExplanation The description explains what changed, why it changed, the test coverage, and the local validation performed. It omits the template headings for Demo Video, Review Trigger, and Checklist, but the main required change and testing information are present.
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
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 |
e69763f to
9160518
Compare
Bugbot is paused — on-demand spend limit reachedBugbot uses usage-based billing for this team and has hit its on-demand spend limit. A team admin can raise the spend limit in the Cursor dashboard, or wait for the next billing cycle to continue. |
9160518 to
1e7c9d0
Compare
Bugbot is paused — on-demand spend limit reachedBugbot uses usage-based billing for this team and has hit its on-demand spend limit. A team admin can raise the spend limit in the Cursor dashboard, or wait for the next billing cycle to continue. |
136a103 to
3c30c84
Compare
3c30c84 to
cd55ac6
Compare
Bugbot is paused — on-demand spend limit reachedBugbot uses usage-based billing for this team and has hit its on-demand spend limit. A team admin can raise the spend limit in the Cursor dashboard, or wait for the next billing cycle to continue. |
6964584 iOS: show first-run onboarding only after sign-in (manaflow-ai#10789) c582b8d perf(cmux-tui): replay durable notices without a temporary vec (manaflow-ai#11026) cc47a91 fix(cmux-tui): stop terminal content admission from swallowing context-menu presses (manaflow-ai#11019) 9578c8a chatmux-relay: tunnel-direct terminal listener + transport-fenced detach (manaflow-ai#11017) 9ae6367 test(relay): align the pooled arm-coalescing pin with the manaflow-ai#11034 deferral rule (manaflow-ai#11038) 3be7b61 iOS: give the changes-hint banner dismiss button a 44pt hit target (manaflow-ai#10883)
Summary
The previous implementation collected the entire bounded retained queue into a temporary Vec only to release the iterator borrow before publishing. The new loop keeps the queue intact and avoids that allocation. The queue is capped at 64 events.
Validation: rustfmt check and git diff check passed locally. Hosted focused verification is required because local cmux-tui cargo builds are not allowed.
Summary by cubic
Replays
cmux-tuidurable notices by index instead of collecting them into a temporaryVec, avoiding an allocation while preserving queue contents and front-to-back delivery order.cmux-tuicargo builds are not allowed.Written for commit cd55ac6. Summary will update on new commits.
Summary by CodeRabbit