claire/tests
Natalie 24c6f24f43 feat(@projects/@claire): supervisor auto-resume of dead worker sessions
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>
2026-06-03 01:12:33 -07:00
..
conftest.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_agent_config.py feat(@projects/@claire): add auto-continue nudge logic 2026-06-01 00:39:02 -06:00
test_agent_peer_mode.py feat(@projects/@claire): add headless peer sync agent loops 2026-05-31 18:15:59 -06:00
test_api.py feat(web): Implement API endpoints and service logic for fetching "Considered Work" data 2026-05-21 14:39:22 -07:00
test_chat_api.py refactor(domain): rename ChatRole persisted value clare → claire (migration 0010) 2026-05-27 14:29:30 -06:00
test_chat_commands.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_chat_nl.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_chat_projection.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_chat_service.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_chat_stream.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_cli_smoke.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_config.py feat(@projects/@claire): host-capability registry for routing/dispatch 2026-06-02 23:58:52 -07:00
test_db.py feat(@projects/@claire): add pinned decision feature 2026-06-01 02:36:07 -06:00
test_decision_pin.py feat(@projects/@claire): add pinned decision feature 2026-06-01 02:36:07 -06:00
test_decisions.py feat(decisions): add decisions tracking system 2026-05-22 16:58:45 -07:00
test_dispatch.py fix(dispatch): discover sessions by canonical host label, not raw "local" 2026-05-29 22:46:28 -06:00
test_events.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_fleet.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_health_rounds.py feat(@projects/@claire): rounds skip-gate loop + fleet release tool 2026-06-02 22:58:41 -07:00
test_hlc.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_move_task.py feat(@projects): add session orchestration & web UI components 2026-05-21 19:54:42 -07:00
test_orchestrator_bootstrap.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_orchestrator_mcp.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_orchestrator_supervisor.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_orchestrator_tools.py feat(@projects/@claire): add tmux_name validation in session dispatch tests 2026-05-22 00:38:16 -07:00
test_orchestrator_turn.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_pm_commands.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_pm_events.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_pm_service.py refactor(domain): rename ChatRole persisted value clare → claire (migration 0010) 2026-05-27 14:29:30 -06:00
test_pull_idempotency.py refactor(domain): rename ChatRole persisted value clare → claire (migration 0010) 2026-05-27 14:29:30 -06:00
test_pull_liveness.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_pull_reap.py feat(@projects/@claire): add session reaping logic 2026-06-01 01:16:42 -06:00
test_rclaude_wrapper.py feat(@projects/@claire): improve session targeting for direct sends 2026-05-22 00:30:39 -07:00
test_rename.py feat(@projects): add session orchestration & web UI components 2026-05-21 19:54:42 -07:00
test_scheduler.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_scheduler_nudges.py refactor(domain): rename ChatRole persisted value clare → claire (migration 0010) 2026-05-27 14:29:30 -06:00
test_supervisor.py feat(@projects/@claire): supervisor auto-resume of dead worker sessions 2026-06-03 01:12:33 -07:00
test_sync_auth.py fix(@projects/@claire): 🐛 correct spelling in test names 2026-05-31 17:47:31 -06:00
test_sync_convergence.py fix(@projects/@claire): 🐛 correct spelling in test names 2026-05-31 17:47:31 -06:00
test_task_deps.py feat(@projects/@claire): add blocker status checks in scheduler 2026-05-21 23:32:16 -07:00
test_telemetry_event.py feat(@projects/@claire): add host telemetry migration and reporting 2026-05-31 18:08:43 -06:00
test_usage.py refactor(testing-test): ♻️ Update test imports to use claire instead of clare in package references 2026-05-20 19:54:05 -07:00
test_vault.py feat(@projects/@claire): vault secret management 2026-05-31 21:01:11 -06:00
test_vault_verify.py feat(@projects/@claire): add vault verification CLI 2026-06-01 00:24:35 -06:00