- Add SessionActivity tracker for session liveness monitoring
- Add cleanupOrphanedParts() to recover tool parts stuck from prior crashes
- Add periodic watchdog that detects stuck tools beyond configured timeout
- Leaf-filtering: only force-errors actual stuck tools, not task tools waiting on children
- Idle detection: cancels sessions with no activity beyond idle threshold
- Config support for tool_timeout, task_timeout, idle_timeout