cmux NEXT: clear text focus and formatting check failures

Closed
TE
14d ago
+31-30

Summary

The selectable Add Device setup command retains its AppKit focus ring, so the repository's text-focus guard fails on the feature branch. Set the label's focus ring to none while keeping the command selectable. Also restore the formatter's indentation in HostSections.tsx, which otherwise blocks the full web check after the focus guard passes.

Testing

python3 scripts/cmux-next/check-text-focus-rings.py fails on base a11c795efafbcd81a007426f45f7d67c849142eb at AddDeviceView.swift:164 and passes after the repair. The system-blue check's existing Sidebar warnings return zero and are unchanged.

Observed / Not run

  • Text-focus guard and git diff --check pass on the repair.
  • HostSections changes are indentation only; no render behavior changes.
  • Full bun run check passes on exact repair head ca714f25ee7d110369e75f7c321c37dbe6b3d907: formatting, lint, type checking (2406 files), protocol generation, and structural guards.
  • Managed native step c6ce6bb39f812a550271ce8f passed on aws-m4pro-6 at this exact head: package/test compilation and both AddDeviceShotsTests tests pass. The existing test renders seven real AppKit component states with fake services and checks accessibility actions. Artifact SHA-256: 9fb303ebbeef73f0aeecbcb0906ebb249bff909ff4227105beedc2485ad18462.
  • Independent Astra review and primary review pass at this exact head. The ci-status landing gate has not reported; one 180-second condition wait timed out. Owner: codex-7 on cosmic-gray. Resume from the existing CI receipts, land this PR before #24431, and do not dispatch duplicate CI.
  • No strings or localization catalogs change.

Changelog

Fixed: The selectable Add Device setup command no longer draws its own focus ring.

Proof

Reference: Claude's quiet controls in apps/claude/live/composer-status-row-below.png in manaflow-ai/cmux-design-references; the repository's text-focus guard requires the owning control to show focus.

Claude referenceNative AddDevice component fixture
Claude referenceNative AddDevice states

This is the existing native test's component contact sheet, not a running desktop-window capture. Services are fake; no real device pairing was exercised. The text-focus guard establishes the configured ring behavior.

No capture: A live AddDevice desktop scene is not registered in the managed capture tool. Native component rendering and accessibility actions are verified above; live enrollment is not claimed.

Agent session: cosmic-gray