Which failure is safe to replay
Sort five groups of failed calls after an outage into replay as is, replay after a check, and do not replay, and name the check for each.
On this page
After an outage the dead-letter queue is a list of decisions. "Replay all" is one of them, and on this queue it double-sends reminders and overwrites three contacts staff fixed this morning.
The situation
The host that runs the agency's connectors could not reach other systems from 06:00 to 14:00 on Saturday. Every outbound call timed out, so whether each request arrived is unknown. On Monday at 08:00, about 50 hours later, the dead-letter queue holds five groups:
| Group | Count | What failed |
|---|---|---|
| A | 1,140 | GET /contacts lookups against the CRM |
| B | 31 | POST /invoices to the accounting system, which accepts no idempotency key; each invoice carries its timesheet id in a reference field |
| C | 26 | PUT /contacts/:id full-record updates to the accounting system, built from the CRM on Saturday; staff edited 3 of those contacts there at 07:30 today |
| D | 212 | payment.received events stored by the receiver, which runs elsewhere, whose processing failed; the worker dedupes on event id, keys expiring after 72 hours |
| E | 9 | payment-reminder emails, sent with an Idempotency-Key the email provider honours for 24 hours |
Voiding a duplicate invoice takes 15 minutes at $30 an hour; a client reminded twice costs a 10-minute founder apology at $100 an hour. The lesson is idempotency and deduplication.
The question
Decide, for each group, whether to replay it as it is, replay it after a check, or not replay it, and name the check.
A strong answer · Rubric · Where answers go wrong
Write your answer first, then open