Почему idempotency key не доказывает доставку
Full story
A timeout from an external API proves neither that an operation succeeded nor that it failed. The article sets out why the release, the attempt, the provider's response and the confirmed fact of delivery should each be stored separately. It also looks at how to check the result before sending anything again.
Таймаут внешнего API не доказывает ни успех, ни провал операции. Разбираем, зачем отдельно хранить release, attempt, ответ провайдера и подтверждённый факт доставки — и как проверять результат до повторной отправки. Читать далее