ScheduleWakeup loop: status updates not visible to user at wakeups + 60s interval drifts to 71-107s
Resolved 💬 3 comments Opened Jun 3, 2026 by ndrcndn Closed Jul 7, 2026
Environment: Claude Code CLI on macOS (darwin), model claude-opus-4-8[1m].
What happened
The user asked the agent for "a detailed status and progress update every 60 seconds" while a background agent task ran. The assistant used the ScheduleWakeup tool in a self-paced loop (delaySeconds=60, re-passing the user's prompt verbatim) and, on each wakeup turn, gathered fresh state and emitted a detailed status table before scheduling the next wakeup.
The user reported — twice — that at the wakeups they received only the wakeup notice, with no status-update content visible, and registered it as a clear divergence from what was asked.
Two suspected issues
- Visibility of assistant output on wakeup turns: content the assistant emits in a wakeup-initiated turn did not appear to reach the user; only the wakeup notice rendered. If the assistant's text on scheduled-wakeup turns renders differently (collapsed/suppressed) from normal turns, that breaks the "periodic status update" use case the tool is designed for.
- Cadence drift: with
delaySeconds: 60, the scheduler confirmations consistently reported longer actual delays — "in 71s", "in 97s", "in 107s", "in 98s" — never ~60s. For an explicit 60-second cadence request, the drift compounds the perception that updates are missing.
Expected
- Assistant output produced during a scheduled-wakeup turn is rendered to the user exactly like any other assistant message.
delaySeconds: 60fires ~60s after the call (or documents the expected scheduling latency).
Repro sketch
- Start a long-running background Agent task.
- Ask: "give me a detailed status and progress update every 60 seconds".
- Assistant loops via ScheduleWakeup(delaySeconds=60) with the prompt re-passed verbatim, posting a status table each wakeup.
- Observe what the user actually sees at each wakeup and the real inter-wakeup interval.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗