# Dead-Letter Queue

Record: `arch:dead-letter-queue`
Kind: pattern
Layer: [Execution Core](https://banes-lab.com/records/layer/execution-core.md)
Severity: mandatory for production systems
Scope: service, messaging, resilience
Canonical: https://banes-lab.com/ontology#arch-dead-letter-queue

## Repair

- Refactored by: Route Failures to a Dead-Letter Queue
- Detected by: retry storms on a single poison message
- Violated by: unprocessable messages redelivered forever
- Measured by: redelivery count per failed message
- Enforced by: messaging design review

## requires

- [Message Queue](https://banes-lab.com/records/arch/message-queue.md)

## reinforces

- [Fault Isolation](https://banes-lab.com/records/lex/fault-isolation.md)
- [Observability](https://banes-lab.com/records/arch/observability.md)

## enables

- [Poison-Message Quarantine](https://banes-lab.com/records/lex/poison-message-quarantine.md)
- [Reprocessing After Fix](https://banes-lab.com/records/lex/reprocessing-after-fix.md)

## conflicts-with

- [Infinite Redelivery Loop](https://banes-lab.com/records/lex/infinite-redelivery-loop.md)

## tensions-with

- [Operational Overhead](https://banes-lab.com/records/lex/operational-overhead.md)

## tensions

- [Dead-Letter Queue Operational Overhead](https://banes-lab.com/records/tension/dead-letter-queue-operational-overhead.md)
