feat: add SelfHealingManager for unattended multi-day operation
Adds four self-healing subsystems to enable the engine to recover from
common failure modes without human intervention:
- Auto-unpause: clears rate-limit-triggered globalPause with escalating
backoff (5 min → 60 min cap), resets on sustained recovery
- Stuck kill budget: caps task stuck-kill retries (default 3) to prevent
infinite stuck→todo→stuck loops
- Periodic maintenance (every 15 min): git worktree prune, orphan cleanup,
SQLite WAL checkpoint
- Worktree cap enforcement: removes oldest idle worktrees when count
exceeds 2× maxWorktrees
New settings: autoUnpauseEnabled, autoUnpauseBaseDelayMs,
autoUnpauseMaxDelayMs, maxStuckKills, maintenanceIntervalMs.
New task field: stuckKillCount (schema v8 migration).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>