Avoid cloning occluders during graphics cache checks - #11746
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
All contributors have signed the CLA ✍️ ✅ |
|
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; 1 remains after this review. 📝 WalkthroughWalkthroughThe graphics scene context check computes occluders once and compares them directly with cached values. The cache update moves the computed occluders into the stored ChangesGraphics context cache
Estimated code review effort: 1 (Trivial) | ~5 minutes Merge Risk: ⚪ Minimal · up to This change removes a redundant occluder-vector clone while preserving graphics cache invalidation behavior. The updated cache paths are covered by existing focused tests, with no remaining merge-readiness risk identified. Suggested reviewers: 🚥 Pre-merge checks | ✅ 15✅ Passed checks (15 passed)
Full details: Description checkExplanation The description explains what changed, why it changed, and how it was validated. It does not use the template headings and omits the review trigger and checklist, but the required technical context is present. Full details: Docstring CoverageExplanation No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (1 skipped: 1 too large.) 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 commit 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 pull request changes only Full details: Cmux Algorithmic ComplexityExplanation PASS. The only changed file is Rust source, and the diff replaces a cloned Full details: Cmux Swift ConcurrencyExplanation PASS: The pull request changes only Full details: Cmux Swift `@Concurrent`Explanation PASS: The pull request changes only ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Warning Some tools did not complete. Review the errors below. 🔧 ast-grep (0.45.2)cmux-tui/crates/cmux-tui/src/app.rsast-grep timed out on this file 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 |
0a707f9 to
9dbdf5d
Compare
This comment has been minimized.
This comment has been minimized.
2ff6eaa to
b348b77
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. |
4f9079a to
6fa83c0
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. |
ebcc31a to
c366104
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. |
c366104 to
336cab7
Compare
|
Correctness and allocation note: |
|
Note GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer. |
829c6af Fix Linux iOS release origin guard (manaflow-ai#11754) a013ecb Guard PTY child during terminal host startup (manaflow-ai#11425) 1b0f61d cloud: lgx 12 vCPU / 24 GB size, 20260903c ladder, Freestyle preconnect, one-exec attach (manaflow-ai#11783) d300944 Fix RemoteResumeBindingTests legacy snapshot fixture (manaflow-ai#10338) 39a2f3a Avoid cloning graphics occluders for cache checks (manaflow-ai#11746) 7a5e0c5 ci(tui): make ignored coverage and browser smoke explicit (manaflow-ai#11752) 18bec20 ci: poll Gatekeeper after stapling the Computer Use helper (manaflow-ai#11778) e473108 ci: simplify reusable TUI package checkouts (manaflow-ai#11749) 0915892 fix(tui): reconcile every PyPI wheel after upload (manaflow-ai#11740) 1cbd743 fix: make SSH auth cleanup fork resilient (manaflow-ai#11497) # Conflicts: # .github/workflows/cmux-tui-build-package.yml # .github/workflows/cmux-tui-nightly.yml # .github/workflows/cmux-tui-sdks.yml # .github/workflows/cmux-tui.yml # .github/workflows/tui-publish-pypi.yml
Summary:
Validation:
git diff --checkcargo test --locked graphics_scene_cache(2 tests passed)No new test was added because allocation behavior has no independent user-visible assertion; existing graphics scene cache tests cover the unchanged and changed context paths.
Summary by cubic
Stops cloning the occluder list when checking the graphics scene cache. The cache check now compares the cached fields directly against the freshly computed occluders and moves the
Vecinto the cache only when the context changes, cutting per-frame allocations with no behavior change.Written for commit 336cab7. Summary will update on new commits.
Summary by CodeRabbit