- Add Watchdog module with 4 timeout types: * PTY first-output timeout (90s default) * Stream-json first-output timeout (90s default) * Overall session timeout (3600s default) * Stop hook watchdog timeout (120s default) - Timeout thread monitors child and sends SIGTERM on deadline - Main thread detects timeout, kills child (SIGTERM→SIGKILL), exits non-zero (code 3) - Clear diagnostics to stderr with specific timeout descriptions - CleanupGuard ensures temp dir/FIFO removal on all exit paths - Add CLI flags: --timeout, --first-output-timeout, --stream-json-timeout, --stop-hook-timeout - Integration tests verify timeout fires and cleanup succeeds This prevents indefinite hangs regardless of why child wedges. Bead-Id: bf-2f5 |
||
|---|---|---|
| .. | ||
| fixtures | ||
| integration | ||
| cli.rs | ||
| emitter.rs | ||
| hooks.rs | ||
| integration.rs | ||
| pty_integration.rs | ||
| startup.rs | ||
| stop_poller.rs | ||
| terminal.rs | ||
| transcript.rs | ||
| version_compat.rs | ||
| watchdog.rs | ||