cmux-next: reopen closed workspace
Merged
TE
1mo ago+303+303+012345678901234567890123456789-6-6-0123456789
Reopen Closed Workspace now uses the same daemon history owner as Reopen Closed Tab, Reopen Closed Screen, and Recently Closed. It reopens the newest plain workspace, skips group records, and shows the restored workspace by its exact ID.
Empty history and a workspace already reopened by another client produce a localized refusal. If the restore commits but its workspace is missing from the mirror, the action reports that it may have applied instead of silently succeeding.
Verification
- Test-only commit:
c1a7b8d66b0cab0b976994cee662a2247787bf36; two new regressions fail as expected, fleet job3a329bf32bf1249bad75e8ad. - Initial fix
277d141f317c5f0105ca083d2d98d9d9f4432237passed all 6 shared-history tests (fleet4b72dc8eb9843367e72ebb68). - Follow-up test-only commit
b21b196c42cabbeaae0e681335b2f75bed0de468fails the no-window regression (fleetc2e0e0810c3ec85090565c59). - Current fix
0cf3736c304b169175c6365dda33ebacacebbabeadds a cancellable event-driven wait for the exact workspace and uses the existing window-reveal path. All 10 focused tests pass (fleetfa5146e490bb8d1feeccbdfc). - Shared-history tests cover workspace selection, empty history, raced removal, and a missing workspace alongside an unrelated live workspace.
- Independent review found no correctness issue. All four original review threads are addressed; both later lifecycle findings are fixed and all review threads are resolved.
- The refusal is localized in all 21 existing catalog locales. Repository-wide localization guards still fail in unchanged entries.
The merged base dd4e81ad also fails the repository guards: base run shows the same AcpmuxDaemonLauncher concurrency lint, icon-picker scrollbar lint, and CI target/routing graph failures as the earlier PR run. Final-head hosted checks are still pending.
Changelog
- Added: Reopen Closed Workspace restores the newest workspace from daemon history.