cmux NEXT tests: Group by Status and pane zoom tests follow the lane-status default and the bar overflow (base reds)
Base red
cmux-next swift test on feat-cmux-next fails two tests the same way on base. They have two separate causes, one commit each. Both are test-only changes.
1. SidebarStatusGroupingTests.theSectionsComeFromThePriorityClassifier (:202)
Failure: sidebar.drawn → ["Idle, 5 workspaces", "handle:1", "Claude Code", ...], where ["Needs you, 1 workspaces", "waiting", "Done, ...", ...] was expected.
Culprits:
- The test from #20905 (f2eb20d0bea, Group by Status, a Debug toggle that is off by default) relied on lane status reaching the rows.
- 8f4e8f04d45 (Lawrence 2026-10-21, "lane status, row status and the Now: line are off by default") made the row feed read acpmux lanes only with
sidebar.rowStatusandsidebar.laneStatuson. With both off, every row lands under Idle. - f32ee25f5a5 (workspace tabs listed by default) adds tab rows to
drawn, which shows as the "Claude Code" entries above.
Verdict: test change. These are deliberate default changes, and the test's intent still holds: the sections come from the Priority classifier. The test now turns the two lane switches on for its own run and resets them after. It reads each row by its title, because the fixture's workspaces have handle:<n> ids, and it leaves listed tab rows out. A finished chat's row carries no Done chip (#23767, 10b45915a53: "rows draw no status words; ... never Done"), so its expected place is now under Idle instead of a Done section.
2. TabDoubleClickZoomTests.aZoomedPaneShowsALitZoomButton (:145)
Failure: Expectation failed: !(menu.items.contains { ActionRegistry.menuRun(of: $0)?.id == "toggleSplitZoom" })
Culprit: #26132 (5df1da9e87a, "Make pane types and commands discoverable"). A bar too narrow for a button now hides the button and offers it in "…" instead. The test harness's PaneToolbar had no frame, so its width was 0, every button overflowed, and "…" offered Zoom a second time.
Verdict: test change. The overflow behavior is deliberate. The harness now gives the bar a pane's frame (240 × TabStripView.preferredHeight), so the test checks what it was meant to: when the pane is zoomed, the lit zoom button shows and "…" does not offer zoom again.
Observed / Not run
- Observed: both failure lines, from base CI logs.
prepush-gatepasses. - Not run: no Swift test from this host. The fleet runs these at the head (expected green) and at base (expected red at :202 and :145):
--filter 'SidebarStatusGroupingTests|TabDoubleClickZoomTests'
No capture: test-only change.
Changelog
none
Agent session: agent session
🤖 Generated with Claude Code
![View with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/view-with-codesmith-dark-v3-3x.png)
![Autofix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/autofix-with-codesmith-dark-3x.png)
Need help on this PR? Tag @codesmith-bot with what you need.
Summary by cubic
Fixes two test failures in cmux-next swift test on feat-cmux-next caused by recent default-behavior changes. Both changes are test-only.
SidebarStatusGroupingTests.theSectionsComeFromThePriorityClassifiernow turns onsidebar.rowStatusandsidebar.laneStatus(both off by default) for its run, reads rows by title, and leaves out listed tab rows. A finished chat's row carries no Done chip anymore, so it expects it under Idle instead of Done.TabDoubleClickZoomTests.aZoomedPaneShowsALitZoomButtonnow gives the harness'sPaneToolbara pane-sized frame (240×TabStripView.preferredHeight) so buttons fit, and verifies the lit zoom button shows without "…" offering zoom again.