{ "id": "retry-idempotency", "ambiguity": "You asked for retries limited to the failures that are safe to repeat, without saying which those are.", "facts": [ { "id": "safety", "fact": "The charge endpoint has no idempotency key, so never retry a timeout: the request may already have reached the processor and a second attempt can charge twice. A refused connection is safe to retry, because nothing was sent.", "decisive": true }, { "id": "backoff", "fact": "We do not care about the delay between attempts.", "decisive": false }, { "id": "logging", "fact": "No particular logging is required.", "decisive": false } ], "stonewall": "No strong view on that one - use your judgement.", "volunteer": false }