Missing timeout on Claude CLI subprocess causes indefinite hangs
Next step: Evaluate this item to determine if it's worth fixing. Or approve directly if you already know what needs to be done.
Location
src/supervisor/executor.py:169
Description
engine.py line 464 has a 900 second (15 min) timeout for Claude CLI, but there's no timeout for the SSH connection test in executor.py line 213 when test_connection() is called with timeout=15. If the SSH connection hangs during the initial multiplexing setup (line 169), it will block indefinitely despite the 15s timeout parameter because setup_multiplexing() only times out the echo command, not the initial connection establishment. This can cause runs to be stuck in RUNNING state until the 4-hour stale run recovery kicks in. Should add ConnectTimeout to SSH options and enforce timeout at the process level.
Evaluation
Click "Evaluate with Claude Code" to have an agent analyze this item.