Business event delivery
The Lifecycle
Transitions Explained
Supported mutations append ledger and delivery work transactionally. Dispatch resolves runtime destinations and queues messages; successful queue acceptance removes outbox work. A destination-free event also leaves the outbox but receives no message.
What Cannot Happen
Retention keeps facts protected by outbox work, and the application does not requeue delivered facts.
Concurrency and Timing
The dispatcher is limited to one invocation and uses expiring claims. Message handling reports individual failures, allowing unrelated destinations to proceed. Accepted messages may be repeated, and consumers must deduplicate envelope identities.