Таймаут, попытка и право на повтор — три разных состояния.

Таймаут означает: ответ не пришёл вовремя.

Попытка означает: система зафиксировала обращение к провайдеру.

Право на повтор появляется только после проверки результата первой попытки.

Если запрос мог успеть создать внешний объект, состояние остаётся UNKNOWN. Новый вызов с новым ключом может сделать дубль.

Безопасная последовательность:

1. сохранить точный пакет и idempotency key; 2. заморозить автоматический повтор; 3. прочитать состояние провайдера; 4. записать канонический факт или доказанное отсутствие объекта; 5. отдельно разрешить новую попытку.

UNKNOWN — не ошибка интерфейса. Это честная граница знания системы.

Где в вашем процессе таймаут всё ещё автоматически превращается в «можно повторить»?

Таймаут, попытка и право на повтор — три разных состояния.
Таймаут означает: ответ не пришёл вовремя.
Попытка означает: система зафиксировала обращение к провайдеру | Сетка — социальная сеть от hh.ru Таймаут, попытка и право на повтор — три разных состояния.
Таймаут означает: ответ не пришёл вовремя.
Попытка означает: система зафиксировала обращение к провайдеру | Сетка — социальная сеть от hh.ru