cmux NEXT: retire tabs.hiddenButtons; the pane's "…" lists every action

Merged
TE
24d ago
+25-450

Summary

Since the pane's hover "…" replaced its buttons (#20119), nothing reads tabs.hiddenButtons (the action ids right-clicked off the old row). This retires it the way tabs.newTabKind was retired:

  • SettingsSchema.retiredKeys lists it. An old cmux.json still loads, with no diagnostic, and settings.set answers that it was removed.
  • Removed: PaneToolbarSetting, its schema row and parse, the agent-settable entry, and the two catalog strings.
  • Regenerated on the merged head: the settings schema, the MDM exports (docs/mdm/*) and the settings page strings. These changes only remove entries. Base's exports still listed tabs.newTabKind, which #20127 retired in Swift, so those rows go too.

Verification

PaneToolbarHiddenButtonsRetiredTests (fleet run-swift-testing-suites.sh):

  • Red on 62c8440fe6c6: all 4 expectations failed:
    • a diagnostic was raised at tabs.hiddenButtons;
    • retiredKeys was [];
    • Settings still had the row;
    • isRetired was false.
  • Green on e4ae910bd399: the full package suite and a Release compile on that head (receipts in a comment).
  • Exports: fleet export-settings-artifacts.sh on the merged head, then bun run strings:settings. Compared with base, the only keys removed are tabs.hiddenButtons and tabs.newTabKind, and nothing is added.
  • Review: subagent review found no Swift issues. Its one finding: cmux-tui's hand-copied retired-key table (cmux-tui/crates/cmux-config/src/schema/retired.rs) lacks this key and tabs.newTabKind. That follows in a separate Rust PR.

Changelog

Removed: The tabs.hiddenButtons setting. The pane's "…" menu lists every action.

🤖 Generated with Claude Code