Idempotency-Key, then send both again to recover the recorded
result.
Keep the operation together
Create one key per logical prediction and save it alongside the request body. Use the key for every attempt to retrieve that prediction’s outcome.curl
command after a timeout. Keep prediction.json and D1_OPERATION_KEY unchanged.
Handle the result
An accepted terminal failure replays as the same uncharged failure. A deliberate
new attempt needs a new key. A validation or insufficient-credit rejection before
acceptance does not consume the key.
