webviews: composer surface lifts toward a theme token, not literal white (base red from #20561)
Merged
TE
23d ago+4+4+0123456789-1-1-0123456789
Fixes the base red that #20561 introduced: webviews/test/theme-colors.test.ts "a migrated stylesheet takes its colors from the theme" failed at the feat tip, because composerStates.css:28 mixed the light composer surface toward a literal white.
- New shared token
--cmux-tone-lightinpages/shared/desktop.css: the light end of the tonal scale. It is the one place that keeps white, markedtheme-fixed, matching nativeThemeTokens.opaqueOverlayFill, which mixes a light page toward.white. --acpmux-composer-surfacenow mixes towardvar(--cmux-tone-light). Light themes paint the same pixels; the dark branch is unchanged.
Testing
- Red:
bun test test/theme-colors.test.tsfails on feat tip (coordinator's base-red report at c3316947,composerStates.css:28literal white). - Green: the same command on this head passes, 7 pass, 0 fail.
- No visual change: the computed color is identical (
#fffโ#fffthrough a variable), so no recording.
Changelog
none
๐ค Generated with Claude Code
Need help on this PR? Tag @codesmith-bot with what you need.
Summary by cubic
Fixes the theme-colors test failure from #20561 by lifting the light composer surface toward a shared theme token instead of a literal white.
- Adds
--cmux-tone-lightindesktop.css, the single theme-fixed place that keeps white, matching nativeThemeTokens.opaqueOverlayFill. --acpmux-composer-surfacenow mixes toward that token; light themes paint identical pixels and the dark branch is unchanged.