Реальність: процеси завжди мають винятки
Платіж може не пройти, доставка затриматись, інтеграція повернути 500. Якщо workflow не вміє працювати з винятками, команда буде “вручну” рятувати кожен кейс.
1) Винятки як частина моделі
- Окремі стани: failed, requires_review, blocked.
- Причина блокування (reason code) — щоб не гадати.
2) Retry policy
- Exponential backoff + jitter для тимчасових помилок.
- Не ретраїмо валідацію — одразу в “review”.
3) Dead‑letter і інструменти підтримки
- Після N спроб — dead‑letter з контекстом і можливістю reprocess.
- Адмін‑екран: події, помилки, retries, кнопка re-sync/retry.
4) Журнали подій (event log)
Хронологія “що сталося” по кейсу — ключ до швидкої діагностики: хто/коли/який сервіс/яка відповідь інтеграції.
Підсумок
Стійка автоматизація — це винятки + ретраї + dead‑letter + прозорий event log. Тоді процеси працюють стабільно навіть у “погані дні”.