# What is At-Least-Once Delivery? Also called at least once. At-least-once delivery is a messaging guarantee in which every message is delivered to a consumer one or more times, never zero. The system retries until it receives an acknowledgment, which means a message whose acknowledgment is lost will be redelivered. Consumers must therefore tolerate seeing the same message more than once. The guarantee exists because the alternatives are worse or unattainable. At-most-once delivery, where a message is sent without retry, silently loses work whenever a consumer crashes mid-processing. True exactly-once delivery across independent systems is not achievable in general, since the acknowledgment itself can be lost after the work completes and no protocol can distinguish that from a failure before completion. At-least-once accepts duplicates as the tolerable failure. Duplicates arise from ordinary events, not exotic ones. A consumer that finishes processing and then crashes before acknowledging will see the message again. A visibility timeout that expires during a slow operation causes redelivery while the original is still running. A rebalance across consumers reassigns in-flight partitions. Any of these can produce concurrent duplicate processing, not merely sequential. The standard remedy is to make the consumer's effect repeatable without additional change, using a deduplication key derived from the message and recorded transactionally with the work. Where the effect reaches an external system, that system's own deduplication support becomes decisive: many payment and messaging APIs accept a client-supplied key precisely so a retried call is recognized as the same request. For agent workloads the stakes rise because side effects are the product. A duplicated run that sends the same email twice, files the same ticket twice, or repeats an outbound action is a user-visible defect rather than a wasted cycle. Systems that let agents act should treat duplicate suppression at the action boundary as a required control, not as an optimization. ## Key points - Every message arrives one or more times, never zero - Duplicates come from lost acknowledgments and timeouts - True exactly-once across independent systems is unattainable - Deduplication keys recorded with the work suppress repeats - Duplicate agent actions are user-visible, not merely wasteful ## In practice A worker consumes task messages and calls an outbound email API. A network partition delays one acknowledgment past the visibility timeout, so the broker redelivers while the first attempt is still in flight. Because the worker passes a deduplication key derived from the task identifier, the email provider recognizes the second call as the same request and returns the original result instead of sending twice. ## Related terms - [Queue](/en/glossary/queue) - [Retry policy](/en/glossary/retry-policy) - [Dead Letter Queue](/en/glossary/dead-letter-queue) - [Poison Message](/en/glossary/poison-message) - [Worker](/en/glossary/worker) [Back to the AI Glossary](/en/glossary)