When a local worker pane dies (crash, OOM, host power-cycle), its JSONL persists
and is resumable. The agent supervisor now detects dead-but-recent local
sessions and `claude --resume <uuid>`s them, then sends a re-orient kick so the
session re-determines its OWN state (done vs pending vs finished) before acting
— mirrors the orchestrator's rehydrate-on-startup.
- rclaude.Rclaude.resume(): spawn `claude --resume <uuid>` via RCLAUDE_RESUME_ID
(verified empirically against a real dead session on apricot).
- supervisor.select_resume_candidates(): pure, guarded selection — recency
window, supersession (skip if a LIVE session shares the cwd), orchestrator-
workspace exclusion, per-session retry cap, per-tick global ceiling (the
first-wake token-storm guard). 7 unit tests.
- AgentConfig.auto_resume off|dry-run|on (default off) + max/per_tick/window.
Ships off; roll out via dry-run, then on — same pattern as auto_continue.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>