webviews: six base-red composer tests pass (Send keeps its slot; three stale tests follow #22667)
In progress. This PR's react-apps-check shards and web lint are the evidence; results go here when they finish.
Six webview test files have been red on feat-cmux-next since #22667 and #22728. #22833 covered four others; land-and-ci and I split the files so the two fixes don't collide.
| File | Base failure | Cause | Change |
|---|---|---|---|
| composer-history, composer-mention | layout shift 0.0002 (limit 0) on every step that starts a draft | In the plain footer, Send rendered only with a draft and after the mic, so the first letter, an โ recall or an @ pushed the mic left | Code: Send keeps its slot from the start, hidden and inert until there is a draft. composer-polish chose this over allowing the shift. |
| composer-location-strip | trailing mark 2.5 px off (limit 2) | Without a draft the row's last glyph was the mic, not Send's arrow | Expected to pass with Send's slot back at the edge. To be confirmed on this PR's shards. |
| composer-suggested-prompt | expects "Do anything", gets "Type / for commands" | #22667 changed the empty placeholder to Claude's text; #21882 landed later with the old text | Test updated. |
| quiet-access-chip | Full access โ model chip color | #22667 draws the mode in the footer's soft tone and the model and effort as the muted label, on purpose | Test now checks the mode tone (quiet, not the warning color). |
| agent-pane-wheel-pass-through | after โ, draft 12 px from its end (limit < 10) | On Linux the browser's caret reveal stops short of the bottom padding | Test: the last line's text shows in full, as the โ check already asks of the first line. |
The plain footer's row fit measures the footer row, not the box row that Send sits in, so the reserved slot doesn't make a label step down earlier.
Changelog
none (post-merge review: the merged diff changes tests and gallery checks only; Send still arrives after the mic)
Observed / Not run
- Observed: all six files fail on base with the messages above. I ran them with the pinned bun 1.4.2 and
CMUX_BROWSER_TESTS=1(Linux Chromium, huge-blue), and they match base CI run 39535793779. - Not run before push:
bun run check. Web lint and the browser shards run on this PR's CI.
Agent session: cosmic-gray
๐ค Generated with Claude Code
Need help on this PR? Tag @codesmith-bot with what you need.
Summary by cubic
Fixes six base-red webview tests on feat-cmux-next that broke after #22667 and #22728 (#22833 covered the other four). The composer returns to base: Send still arrives after the mic with a draft's first letter, so the plays that start a draft from an empty prompt (history recall, @ mentions) allow the mic's one-slot move (0.0002 against a limit of 0.001), matching the measured Claude desktop box.
composer-location-stripmeasures each icon's drawn ink from its SVG shapes and stroke, not fixed insets, and checks the two ink offsets together within 2.5 px so a failure names both edges.composer-suggested-promptexpects"Type / for commands"โ the empty placeholder since #22667 โ not"Do anything".quiet-access-chipchecks Full access against the footer's mode tone (--agent-soft) instead of the model chip's warning color.agent-pane-wheel-pass-throughasserts the last line's text shows in full, since on Linux the browser's caret reveal stops short of the bottom padding.