gastown/polecats/slit
3dd18a1981
Add Deacon stuck-session detection and force-kill protocol
Implements gt-l6ro3.4: Deacon can now detect and kill genuinely stuck/hung
Claude Code sessions during health rounds.
New commands:
- gt deacon health-check <agent>: Pings agent, waits for response, tracks
consecutive failures. Returns exit code 2 when force-kill threshold reached.
- gt deacon force-kill <agent>: Kills tmux session, updates agent bead state,
notifies mayor. Respects cooldown period.
- gt deacon health-state: Shows health check state for all monitored agents.
Detection protocol:
1. Send HEALTH_CHECK nudge to agent
2. Wait for agent bead update (configurable timeout, default 30s)
3. Track consecutive failures (default threshold: 3)
4. Recommend force-kill when threshold exceeded
Force-kill protocol:
1. Log intervention (mail to agent)
2. Kill tmux session
3. Update agent bead state to "killed"
4. Notify mayor (optional)
Configurable parameters:
- --timeout: How long to wait for response (default 30s)
- --failures: Consecutive failures before force-kill (default 3)
- --cooldown: Minimum time between force-kills (default 5m)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 22:14:05 -08:00
..
2025-12-30 20:52:23 -08:00
2025-12-30 18:03:06 -08:00
2025-12-29 14:54:37 -08:00
2025-12-30 16:43:39 -08:00
2025-12-30 18:03:06 -08:00
2025-12-30 16:20:00 -08:00
2025-12-30 18:03:06 -08:00
2025-12-29 23:45:35 -08:00
2025-12-30 21:18:59 -08:00
2025-12-30 19:43:17 -08:00
2025-12-30 16:14:33 -08:00
2025-12-27 16:48:26 -08:00
2025-12-28 16:40:39 -08:00
2025-12-30 18:01:47 -08:00
2025-12-30 20:52:23 -08:00
2025-12-30 18:03:06 -08:00
2025-12-30 20:52:23 -08:00
2025-12-30 22:14:05 -08:00
2025-12-30 22:01:38 -08:00
2025-12-30 10:45:31 -08:00
2025-12-30 21:01:02 -08:00
2025-12-30 22:12:10 -08:00
2025-12-30 10:54:29 -08:00
2025-12-30 09:58:14 -08:00
2025-12-30 18:03:06 -08:00
2025-12-30 22:02:45 -08:00
2025-12-30 19:25:50 -08:00
2025-12-30 22:10:08 -08:00
2025-12-30 16:21:38 -08:00
2025-12-30 18:03:06 -08:00
2025-12-30 20:52:23 -08:00
2025-12-30 20:52:23 -08:00
2025-12-30 22:10:08 -08:00
2025-12-30 00:19:12 -08:00
2025-12-29 22:02:45 -08:00
2025-12-29 22:02:45 -08:00
2025-12-28 16:38:04 -08:00
2025-12-29 16:11:13 -08:00
2025-12-28 16:38:04 -08:00
2025-12-30 22:02:45 -08:00
2025-12-29 23:58:06 -08:00
2025-12-30 00:59:29 -08:00
2025-12-30 20:52:23 -08:00
2025-12-30 20:51:49 -08:00
2025-12-30 00:52:02 -08:00
2025-12-30 22:10:25 -08:00
2025-12-30 18:03:06 -08:00
2025-12-30 18:03:06 -08:00
2025-12-30 16:47:28 -08:00
2025-12-30 10:43:34 -08:00
2025-12-30 20:59:46 -08:00
2025-12-30 22:10:08 -08:00
2025-12-30 20:52:23 -08:00
2025-12-28 16:38:04 -08:00
2025-12-30 20:52:23 -08:00
2025-12-26 19:42:41 -08:00
2025-12-30 22:13:14 -08:00
2025-12-30 20:52:23 -08:00
2025-12-30 22:10:08 -08:00
2025-12-30 18:03:06 -08:00
2025-12-30 18:03:06 -08:00
2025-12-29 14:54:37 -08:00
2025-12-29 14:54:37 -08:00
2025-12-30 10:43:34 -08:00
2025-12-30 20:52:23 -08:00
2025-12-29 14:54:37 -08:00
2025-12-28 16:00:41 -08:00
2025-12-30 22:10:08 -08:00
2025-12-30 18:01:47 -08:00
2025-12-29 18:02:49 -08:00
2025-12-30 20:52:23 -08:00
2025-12-30 21:16:43 -08:00