perf(cmux-tui): avoid front-shifting layout nodes - #11860
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Team Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 10 included reviews per hour; 8 remain after this review. 📝 WalkthroughWalkthroughChangesLayout Construction
Estimated code review effort: 1 (Trivial) | ~5 minutes Merge Risk: ⚪ Minimal · up to Balanced layout construction now consumes nodes efficiently with VecDeque while preserving pane ordering and layout behavior. No current merge-blocking risk remains. 🚥 Pre-merge checks | ✅ 14 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (14 passed)
Full details: Description checkExplanation The description explains what changed, why it changed, and how it was verified. It also identifies that Blacksmith Rust tests are pending. The missing checklist and review-trigger sections are non-critical, and no demo is needed because this is an internal performance change without a UI change. Full details: Cmux Swift Actor IsolationExplanation PASS: The pull request 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 changes only Full details: Cmux Expensive Synchronous LoadExplanation PASS: The pull request changes only Full details: Cmux Cache Substitution CorrectnessExplanation PASS: The pull request changes only Full details: Cmux No Hacky SleepsExplanation PASS: The PR changes only Rust code in Full details: Cmux Algorithmic ComplexityExplanation PASS. The PR changes only Rust code in Full details: Cmux Swift ConcurrencyExplanation PASS: The pull-request diff changes only Full details: Cmux Swift `@Concurrent`Explanation PASS: The pull request changes only Full details: Cmux Swift Package BoundariesExplanation PASS: The exact PR commit changes only
✨ 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 |
|
All contributors have signed the CLA ✍️ ✅ |
6ff7205 to
23b96c1
Compare
23b96c1 to
49001c3
Compare
3812562 refactor(tui): centralize terminal input classification (manaflow-ai#11855) 7d0385f Axiom: failure rate and latency per third-party endpoint (Freestyle, Stack Auth, Stripe, ...) (manaflow-ai#11779) ed5e826 refactor(tui): share frontend focus target mapping (manaflow-ai#11861) 7fa300e Revert "Fix terminal text bleed during live window resize (manaflow-ai#11530)" (manaflow-ai#11887) bace77c perf(cmux-tui): avoid front-shifting layout nodes (manaflow-ai#11860) 9f8a74f cmux-tui: simplify PTY error mapping (manaflow-ai#11864) 2748329 refactor(cmux-tui): share stack row allocation (manaflow-ai#11867) e7223a5 coderouter: PostHog traces + exceptions keyed by the cmux user, request ids, health endpoint, Slack alerts, upstream header timeout (manaflow-ai#11798)
Summary
Verification
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.Summary by cubic
Speeds up layout construction in
cmux-tuiby replacing front-shiftingVec::remove(0)calls withVecDeque::pop_front(), so building equal-split trees is now O(1) per node instead of O(n). Public APIs and pane ordering are unchanged.Written for commit 49001c3. Summary will update on new commits.
Summary by CodeRabbit