architecture decision
ADR-012: Treat delivery failure as terminal (v0.9.0)
The early fulfillment design treated delivery failure as a terminal shipment state.
Decision RecordApril 29, 2024SupersededFulfillment
This architecture decision has been superseded
You are looking at a previous architecture decision. It has been superseded by ADR-012: Treat delivery failure as a retriable fulfillment state .
New version found
You are looking at a previous version of the adr ADR-012: Treat delivery failure as terminal. The latest version of this adr is v1.0.0 →
Context
The initial implementation used DeliveryFailed to close the shipment workflow immediately.
Decision
Delivery failure was treated as terminal.
Consequences
Support teams had to create new shipments manually for recoverable carrier issues. This decision has been superseded by a retriable failure state.