fix(tests): cmuxTests compiles on main again (two missing lines from #11059 and #11345) - #11346
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; 2 remain after this review. 📝 WalkthroughWalkthroughChangesRenderer and browser updates
Estimated code review effort: 1 (Trivial) | ~2 minutes Merge Risk: ⚪ Minimal · up to The changes are localized compile fixes with no actionable merge-blocking risk remaining; the PR is merge-ready after normal checks and review. Suggested reviewers: 🚥 Pre-merge checks | ✅ 13 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (13 passed)
Full details: Cmux Swift Actor IsolationExplanation PASS. The PR changes only a closure property mutability and adds a module import. Full details: Cmux Swift Blocking RuntimeExplanation PASS: The PR changes only a stored-property declaration ( Full details: Cmux Browser Automation Off-MainExplanation PASS: The PR changes only Full details: Cmux Expensive Synchronous LoadExplanation PASS: The full PR diff changes only one stored-property mutability declaration and adds one import. It adds no agent-history loader, transcript/trajectory/workstream JSONL read, directory scan, per-record syscall, or large JSON parse. Existing Full details: Cmux Cache Substitution CorrectnessExplanation PASS: The complete PR diff contains only a Swift import addition and a Full details: Cmux No Hacky SleepsExplanation PASS. The pull request changes only two Swift source files. The diff changes Full details: Cmux Algorithmic ComplexityExplanation PASS. The verified PR diff changes only one stored-property modifier and adds one import. It introduces no loops, collection scans, sorting, filtering, joins, or other algorithmic work. The existing collection traversal in Full details: Cmux Swift ConcurrencyExplanation PASS: The pull request changes only one stored-property declaration ( Full details: Cmux Swift `@Concurrent`Explanation PASS — The PR diff contains only a stored-property mutability change ( Full details: Cmux Swift Package BoundariesExplanation PASS. The PR changes only a closure property mutability ( Full details: Description checkExplanation The description provides a useful summary and identifies the two compilation errors, but it does not follow the required template. It lacks the Testing section with completed results, the review trigger, and the checklist. Resolution Add the required Testing section with actual test results, complete the applicable checklist items, and include the Review Trigger block or confirm that bot reviews were requested. State whether a Demo Video is not applicable because this change has no UI or behavior change.
✨ 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 |
A `let` with a default value is excluded from Swift's synthesized memberwise initializer, so MarkdownPanelView's `onViewAttachedToWindow:` argument (added in #11059) does not compile. Mirrors #11346 so this branch builds before that fix lands on main; the hunks are identical and merge cleanly. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01886xVcepPfsLRFCrFXLh1M
…ewAttachedToWindow; BrowserPopupWindowController imports CmuxBrowser Same fixes as #11346 and #11337, carried here so this branch builds until they land. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019r7uFvnarRZdeg3TugREt7
|
Second break found once the first was fixed: |
|
Third break, in the test target this time (the app target compiles as of the previous commit): |
The test (added in #11059) uses BonsplitController without importing the module, so the cmux-unit scheme does not compile on main. Mirrors the identical hunk in #11346. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01886xVcepPfsLRFCrFXLh1M
60a635e to
492b2b1
Compare
* test: cover paid-only Cloud VM provisioning * vm: enforce paid-plan provisioning by default * test: cover localized vm_requires_pro copy and a failing free-provisioning env audit Review follow-ups for #11332. These fail until the next commit: the audit script only listed CMUX_VM_ALLOW_FREE_PROVISIONING for presence and could not fail on a permissive value, and vm_requires_pro returned hardcoded English regardless of the request locale. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01886xVcepPfsLRFCrFXLh1M * vm: localize the Pro gate response and fail the env audit on free provisioning Address review findings on #11332: - vm_requires_pro copy now comes from the vmErrors.requiresPro catalog in all 20 locales; resolveVmProvisioningAccountScope is async and reads the request locale. upgradeUrl/upgradeRequired stay locale-free. - audit-vercel-env.mjs fails when CMUX_VM_ALLOW_FREE_PROVISIONING is permissive or a lone legacy CMUX_VM_REQUIRE_PRO=0 reopens free provisioning (freeProvisioningAudit.mjs mirrors the runtime predicate, pinned by a parity test). The key is no longer "recommended". - Settings' Cloud machines plan summary reuses MachinePlanSnapshot .isPaidPlanID so it agrees with the Machines panel on unknown plan ids. - The new paid-plan tests move into a Swift Testing suite. - Rollout checklist documents the legacy alias precedence. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01886xVcepPfsLRFCrFXLh1M * browser: import CmuxBrowser in BrowserPopupWindowController BrowserAppLinkOpenRequest (CmuxBrowser package) has been used here since #10634, but this file never imported the module, so the tagged Debug build fails with "cannot find 'BrowserAppLinkOpenRequest' in scope". The sibling users (BrowserPanel, BrowserNavigationDelegate) already import it. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01886xVcepPfsLRFCrFXLh1M * markdown: make onViewAttachedToWindow a memberwise-init parameter A `let` with a default value is excluded from Swift's synthesized memberwise initializer, so MarkdownPanelView's `onViewAttachedToWindow:` argument (added in #11059) does not compile. Mirrors #11346 so this branch builds before that fix lands on main; the hunks are identical and merge cleanly. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01886xVcepPfsLRFCrFXLh1M * vm: localize the vm_requires_pro display title ui.title fell back to the English status-based default ("Cloud VM limit reached"), so non-English clients got a mixed-language upgrade prompt. vmErrors.requiresPro now carries a title in every catalog and vmRequiresProResponse passes it as displayTitle; the locale tests assert ui.title per catalog and at the route level. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01886xVcepPfsLRFCrFXLh1M * tests: import Bonsplit in SidebarFileDropFindRoutingTests The test (added in #11059) uses BonsplitController without importing the module, so the cmux-unit scheme does not compile on main. Mirrors the identical hunk in #11346. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01886xVcepPfsLRFCrFXLh1M --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…tController) #11059 added this test file using BonsplitController.ExternalFileDropRequest without importing Bonsplit, so the cmuxTests target does not compile on main: cmuxTests/SidebarFileDropFindRoutingTests.swift:58:17: error: cannot find 'BonsplitController' in scope Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UAmvJXcShMJwi1UcLirYAK
…nLocalWorkspace #11345 added CloudTreeNodeActions.projectInLocalWorkspace but the test fixture still uses the old memberwise shape, so cmuxTests does not compile on main: cmuxTests/CloudTreeNativeDragOwnershipTests.swift:273:32: error: missing argument for parameter 'projectInLocalWorkspace' in call Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UAmvJXcShMJwi1UcLirYAK
492b2b1 to
d63f67f
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. |
…ests does not compile since #11059) cmuxTests/SidebarFileDropFindRoutingTests.swift:58:17: error: cannot find 'BonsplitController' in scope Same line as #11346. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AhsDDbUPPMnYKyTy7AXxBd
…le builds on this branch Same lines as #11346 (the CloudTreeNodeActions fixture gained projectInLocalWorkspace in #11345; SidebarFileDropFindRoutingTests needs import Bonsplit after #11059). Whichever lands first, the other merges clean. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PEWn6ZZoGTAi67X3RSJ5aB
Summary
The
cmuxTeststarget does not compile onmain;ci.ymlonly runs on Ghostty-related paths for PRs, so every hostedtest-e2e.ymldispatch onmainfails before running a test. Two one-line fixes:cmuxTests/SidebarFileDropFindRoutingTests.swift— Hand keyboard focus to the opened panel after a right-sidebar file drop #11059 added the file usingBonsplitController.ExternalFileDropRequestwithoutimport Bonsplit:cmuxTests/CloudTreeNativeDragOwnershipTests.swift— Cloud tree agent parity: combined follow-ups (#11300 + #11301) + one-click workspace rows #11345 addedCloudTreeNodeActions.projectInLocalWorkspacebut the test fixture kept the old memberwise shape:The two app-target fixes this PR originally carried already landed on
mainvia #11345. Lane evidence: the run with only fix 1 (33480811497) cleared theBonspliterror and stopped at error 2.Test plan
test-e2e.ymllane on this SHA compilescmuxTestsand executescmuxTests/CmuxTuiSurfaceProviderTests🤖 Generated with Claude Code
https://claude.ai/code/session_01UAmvJXcShMJwi1UcLirYAK