Inter-agent wake signals are lossy (edge-triggered, no ack, no idle re-poll) — dispatchers idle forever on completed work
Status Fixed / completed
Reported on v2.1.214
Maintainer reply None cached
Activity 0 comments · opened Jul 20, 2026 · closed Jul 21, 2026
Summary
Inter-agent completion messages (subagent → dispatcher via the agent mailbox) are written durably to the recipient's inbox, but the wake notification is an edge-triggered, fire-and-forget signal with no acknowledgment and no idle re-poll. If the recipient is busy or its daemon is mid-churn at that instant, it never learns the message exists — and idles indefinitely on work that already finished.
Observed
- A scoping manager agent waited ~5 hours on two "dead" survey subagents (2026-07-20). Both had completed; their reports were sitting in the manager's inbox. Any manual nudge message immediately "resurrected" everything — because the nudge forced an inbox re-read, revealing the already-landed reports.
- The failure is invisible: the dispatcher shows idle/available, the subagents show complete, and nothing is in an error state.
- Downstream harm: dispatchers presume silence = death and redispatch, causing duplicate runs and output-file overwrite races (three double-runs observed 2026-07-18, two more 2026-07-20).
Environment / scale
Claude Code 2.1.214–2.1.215, Linux (WSL2), ~30–50 background agent jobs/day.
Expected
Either acknowledged/retried wakes, or a periodic inbox re-poll while an agent is idle — so a durably-delivered message is eventually processed even when the original wake signal is lost.