fix(next): align Session status header actions

Merged
TE
9d ago
+34-2

Align the Session status header's mixed text and icon actions on one shared center line. The Copy all label and × close control now share a 24px action box with centered content, so the close glyph no longer sits lower than the text.

Lawrence exact ask: "copy all alignment with 'X'".

Reference: Lawrence's /tmp/leo-refs-1028-side/5-copyall-x.png (private reference; not uploaded). Copy: the shared baseline and center line between Copy all and ×. Keep: cmux colours, glass, controls, behavior and defaults. Do not touch: the Session status fields or close/copy actions themselves.

Leo's audit ask: "we're audiing more shit right we need to".

The gallery fixture agent-pane.harness-status adds header-action-alignment, which checks both action frame centers and visible text-range centers at a 0.5px tolerance. The same fixture is used for before/after evidence.

Before/after (same agent-pane.harness-status#header-action-alignment, Chromium, 620px, light and dark):

Before light
After light
Before dark
After dark

Measured evidence: capture job 9831817724357efacf50b5ff, archive SHA256 890adf3d30113ebeeeead7aac997e57f866ea2310d6efb43858132e1da26c978. Base 92c51f49804f had action frame centers y=48px and visible text-range centers differing by 5px; head 7821c60b2bcc18efa9e1f29c08fa95ff80fe4ae0 has both action centers y=53px and visible text-range centers within 0.5px in both themes. The before run intentionally overlays only this gallery fixture onto the base so the visual pair uses the same case; product code remains the base revision.

Validation:

  • cmux-ci test -- bun test webviews/src/agent-session/acpmux/HarnessStatusCard.test.ts webviews/src/agent-session/acpmux/HarnessStatusCard.dom.test.tsx (run 40622524796, source 2ead9e7c23c83d437a363cbc584157704fcd02ea, SUCCESS)
  • Capture job 9831817724357efacf50b5ff completed exit 0; both themes ready and after assertion passed.

Agent session: agent session