Changes:
- feat: introduce @sumicom/quicksave-message-bus package with client/server
pub/sub, multiple transports, full test coverage
- feat: idle hot resume reuses alive CLI processes between turns, eliminating
~200ms ghost-inactive flicker and handling session-id rekey on --resume
- refactor: consolidate all state subscriptions onto the MessageBus protocol
(/sessions/active, /preferences, /sessions/history, /repos/commit-summary,
/sessions/config, /sessions/:sessionId/cards), removing claude:user-input-*,
claude:unsubscribe, and per-type push handlers
- feat(pwa): busClientTransport WebSocket adapter, syncMerge bi-directional
timestamp-based state sync, encrypted-at-rest secureStorage
- fix(bus-client): reject in-flight commands on transport disconnect instead
of letting callers wait out timeouts
- chore: dev-daemon-delayed.sh for safe restart from daemon-spawned Claude CLI;
dev-marker.mjs for cleaner dev-mode detection