Review fixes:
- metadata: sessionId validation to prevent path traversal
- event-bus: guard appendFileSync, remove unused import
- lifecycle-manager: fix reaction retry counting (track attempts,
clear on status transition), allow retry on send failure instead
of immediate escalation, detect killed sessions in polling loop,
map session.killed to agent-exited reaction
- session-manager: validate status against union, clean up runtime
and workspace on spawn failure, kill with default plugins when
project config is missing
Lint/format fixes:
- Remove unused imports across all test files
- Replace `Function` type with typed callback in tmux tests
- Replace require() with dynamic import() in tests
- Replace dynamic delete with object spread in metadata
- Apply prettier formatting to all files
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Maps dependency graph, identifies 7 truly independent work streams
after Phase 0 (scaffold + types), with Linear tickets and spawn
commands ready to go.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>