uunibox.
Демонстрационный проект

Повтор —
не новая заявка.

Исполняемый офлайн-стенд: две страницы событий, фиктивная CRM и журнал каждой попытки. Сеть и платные API не используются.

Сценарии

  • 429: учесть Retry-After и повторить.
  • 503: максимум три попытки.
  • Timeout после записи: повтор не создаёт вторую сущность.
  • Повтор ID: пропустить; конфликт ID: в карантин.
  • Устаревшее обновление не затирает новую версию.
  • Неверная схема не доходит до CRM.

Результат replay

4 уникальные записи CRM, 3 события в карантине. Реальных сетевых запросов:0. L001 сохранён в версии 2 с количеством 4; timeout не создал дубль.

python3 replay.py

Входные события · Полный результат и аудит · Код

Задержки только записываются в журнал; реальное ожидание не запускается. Надёжность реального сервиса этим не доказана.