Ctrl+S / Cmd+S saves via a guard slot that only fires when the Save button itself is enabled — the shortcut can't bypass validation/dirty gating.
All on / All off buttons beside the search box flip every server in one step: single undo snapshot, single refresh, single dirty mark; no-op (no undo noise) when already uniform or empty.
Offscreen smoke test verified: bulk-enable → one undo restores the split; repeated no-op doesn't grow the undo stack; shortcut respects gating. (Implemented by a delegated agent; diff reviewed, tests re-run.)
Note: expected textual conflict with #52's sets row in _build_left — will resolve at merge.
Closes #55.
- **Ctrl+S / Cmd+S** saves via a guard slot that only fires when the Save button itself is enabled — the shortcut can't bypass validation/dirty gating.
- **All on / All off** buttons beside the search box flip every server in one step: single undo snapshot, single refresh, single dirty mark; no-op (no undo noise) when already uniform or empty.
Offscreen smoke test verified: bulk-enable → one undo restores the split; repeated no-op doesn't grow the undo stack; shortcut respects gating. (Implemented by a delegated agent; diff reviewed, tests re-run.)
Note: expected textual conflict with #52's sets row in `_build_left` — will resolve at merge.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Closes #55.
Offscreen smoke test verified: bulk-enable → one undo restores the split; repeated no-op doesn't grow the undo stack; shortcut respects gating. (Implemented by a delegated agent; diff reviewed, tests re-run.)
Note: expected textual conflict with #52's sets row in
_build_left— will resolve at merge.🤖 Generated with Claude Code