Status. Proposed design only. Nothing in this vault is DG client approval. No application, service or test has been executed; every scenario is Not executed. Fees and dates are open.

T36 · Failures, recipient changes and callbacks are recoverable

FieldValue
StatusNot executed
TypeBalanced software
Layer / kindWorker · API · operations
PriorityP0
GatesA06, A08, A10
Build stepStep-07-Outbox-Worker-Email
DecisionsQ07, Q08

Given

Transient/terminal provider failures exist; assignment may change before delivery; callbacks are available only if selected.

When

Run bounded retries/backoff, reassign/revoke before a retry, reach terminal failure and request manual recovery. Replay valid/invalid callbacks if enabled.

Then / oracle

Every attempt rechecks eligibility. Retry stops at the agreed limit; authorised recovery is audited. Invalid callbacks have no effect; valid repeats deduplicate. In-app state persists and failure tools do not expose bodies.

Evidence required

Attempt schedule under fake clock; failed-job view and access test; callback signature/dedup evidence if used.

Decision dependency (verbatim)

Q07/Q08: retry budget, sender ownership, permitted recovery and reassignment event treatment.

Source: TDD rev 1.3 (PDF); machine-readable in 10-Sources/tdd-bundle/. Back to Scenario-Index · Traceability-Matrix · integration dependencies in Dependency-and-Regression-Table.