fix(computer-use): align onboarding visual grid - #11820
austinywang wants to merge 4 commits into
Conversation
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. |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
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 ignored due to path filters (1)
📒 Files selected for processing (10)
Included review availability: Your plan provides up to 10 included reviews per hour; 1 remains after this review. 📝 WalkthroughWalkthroughChangesThe change adds shared visual tokens for Computer Use onboarding. Expanded onboarding surfaces and permission companion layouts now use those tokens. The permission companion view moves to a dedicated file. Icon centering and token synchronization receive regression tests. Computer Use onboarding visuals
Estimated code review effort: 3 (Moderate) | ~25 minutes Merge Risk: ⚪ Minimal · up to This change centralizes Computer Use onboarding visual measurements and applies them across expanded and companion layouts, including synchronized helper-icon geometry. No current merge-blocking behavior or production risk has been identified. 🚥 Pre-merge checks | ✅ 14 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (14 passed)
Full details: Description checkExplanation The description provides detailed context, implementation, validation results, and limitations. It does not use all template headings, include a demo video, or complete the checklist, but it remains substantially complete and relevant. Full details: Linked Issues checkExplanation The changes satisfy the coding objectives in issue [ Full details: Docstring CoverageExplanation Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 14 functions across 8 files. (1 skipped: 1 unsupported.) Full details: Cmux Swift Actor IsolationExplanation No actor-isolation failure was introduced. The new token type is an immutable top-level Full details: Cmux Swift Blocking RuntimeExplanation PASS: The pull-request diff adds no blocking or timing-based synchronization to production Swift. The changed production files contain no new semaphores, waits, sleeps, delayed dispatch, polling, main-queue sync, or manual locks. The three Full details: Cmux Browser Automation Off-MainExplanation PASS: The PR changes only Computer Use onboarding visuals, icon assets, project wiring, and related tests. The scoped files Full details: Cmux Expensive Synchronous LoadExplanation PASS. The production diff adds visual-token constants, SwiftUI layout changes, companion-view extraction, and icon rendering changes. A focused audit of all added production Swift lines found no Full details: Cmux Cache Substitution CorrectnessExplanation PASS: The diff does not replace an authoritative persistence, history, undo, or snapshot read with a cache. The changed production code only centralizes onboarding geometry and icon-rendering tokens. The existing in-memory Full details: Cmux No Hacky SleepsExplanation PASS: The PR changes Swift sources, Swift test code, image resources, and the Xcode project file. It introduces no TypeScript, JavaScript, shell, or non-Swift build/runtime script changes. The only timing values found are existing Swift onboarding values, and the diff adds no sleep, timer, polling, fixed-delay, or retry synchronization code covered by this check. Full details: Cmux Algorithmic ComplexityExplanation No algorithmic-complexity failure was introduced. The production changes add token lookups and constant-time geometry calculations, with no scalable collection scans, sorting, or nested loops. The existing controller scans and polling loop are unchanged. The generator loop processes the explicit five-size list, which is a tiny fixed-size collection. Pixel loops are test-only and exempt. Full details: Cmux Swift ConcurrencyExplanation PASS. The diff adds no background Dispatch queues, DispatchGroup, Combine state, completion-handler API, or untracked fire-and-forget Task. Existing Task, ObservableObject, Full details: Cmux Swift `@Concurrent`Explanation PASS. The diff adds no Full details: Cmux Swift Package BoundariesExplanation PASS. The production diff is Computer Use onboarding UI and AppKit composition. The new
✨ 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 ✍️ ✅ |
…use-onboarding-optical-grid
|
Superseded by #12265, which shipped the Computer Use onboarding and permission companion lifecycle changes covering this optical-grid work. |
1 similar comment
|
Superseded by #12265, which shipped the Computer Use onboarding and permission companion lifecycle changes covering this optical-grid work. |
|
Current main has since added an opt-in skill-link reconciliation path, so this branch now conflicts in the wrapper, docs, metadata, and tests. The duplicate remains worth tracking, but it needs a focused refresh against that policy before landing. |
Closes #11802
Context
The Computer Use onboarding artwork, permission cards, compact companion, and completion state had several independently tuned insets, corner radii, type sizes, and spacings. The asymmetric blue cursor also appeared off-center because it was positioned from its ink centroid rather than its visible bounding box.
Implementation
Sources/App/ComputerUseOnboardingVisualTokens.swiftas the shared measured baseline for the expanded overview, permission cards, completion state, compact companion, typography, rounded-tile ratio, and brand colors.251.0085, 251.0085translation), then regeneratedResources/ComputerUseHelperIcon.icnsand synchronized the SVG artwork.ComputerUseOnboardingView.swiftremains 764 lines; the extracted files are 216, 27, and 280 lines.Validation
git diff --check origin/main...HEAD— pass.python3 scripts/normalize-pbxproj.py --check cmux.xcodeproj/project.pbxproj— pass../scripts/check-pbxproj.sh— pass../scripts/lint-pbxproj-test-wiring.sh— pass (759 test files checked).swiftc -parsefor all changed onboarding/icon sources andcmuxTests/ComputerUseUXTests.swift— pass.helperIconCursorBoundingBoxStaysCenteredInItsTile(light/dark),computerUseOnboardingUsesOneMeasuredVisualGrid, andcomputerUseHelperIconCentersTheMeasuredCursorBounds; the test source parses cleanly, but the app test target was not built or run under the constraint below./tmp/cmux-onboarding-analysis/before-after.png(with/tmp/cmux-onboarding-analysis/current-icon.pngandafter-icon.png).Limitations
No local app build, launch, screenshot/video session, or UI dogfood was run, per the no-build/launch constraint. Live light/dark, localized, and Dynamic Type layouts therefore remain unexercised here; validation is limited to parsing, project wiring, geometry/icon harnesses, and static raster evidence. The repository's
scripts/swift_file_length_budget.pyis not present in this checkout, so that script could not be run.Summary by CodeRabbit
New Features
Bug Fixes
Tests