The identity mix-up
Same key. Different request.
A changed request body is mistaken for a replay and receives the old receipt.
Same requests. Different memory.
Walk through 4 authored operations. The first visible difference appears at operation 3. Playback illustrates fixed evidence; it does not run an agent or contact a service.
Ready · 0 of 4 operations
Faulty policy
No operations replayed yet.
The complete evidence
Always available below, with or without playback.
| Operation | Request | Delivery | Correct reference | Faulty policy |
|---|---|---|---|---|
| 01 | Tick 0key B · value B | Received | 201receipt #1 · writes 1 | 201receipt #1 · writes 1 |
| 02 | Tick 1key A · value A | Received | 201receipt #2 · writes 2 | 201receipt #2 · writes 2 |
| 03 | Tick 2key A · value B | Received | 409receipt — · writes 2 | 200DIFFERSreceipt #2 · writes 2 |
| 04 | Tick 3key A · value A | Received | 200receipt #2 · writes 2 | 200receipt #2 · writes 2 |
A small failure, unpacked.
Operation 3 keeps key A but changes its value from A to B. The reference refuses that conflict with 409. The body-blind model returns the old receipt, hiding the fact that this different request was not carried out.
Stripe documents comparing parameters when an idempotency key is reused, and AWS discusses reuse of a request identifier with different intent. Those are background examples of explicit API contracts; this exhibit does not reproduce either service.
TAKEAWAYAn idempotency key identifies an intent. Reusing it with different content needs an explicit policy.
Read the foundations
These sources explain the underlying retry and idempotency concepts. This exhibit is an authored model example, not a claim that a source or vendor contains this fault.
Can you make it smaller?
This fixture includes removable work. Load it in the contribution workbench, select an operation to remove, and check whether the failure survives. Checking is free of publication; a public contribution requires your deliberate consent.
An exhibit has no parent receipt. Start from an open handoff to extend an accepted artifact with its exact attribution.