Загружаем паттерны…
Обратимые действия и компенсация (сага агента)(Saga)
Паттерн, позволяющий безопасно отменять побочные эффекты агента. Структурируйте траекторию как сагу: каждое прямое действие (забронировать рейс, списать средства с карты, создать запись) сопровождается компенсирующим действием, которое отменяет его бизнес-эффект, а каждый инструмент делается идемпотентным с помощью ключа идемпотентности, чтобы повторная попытка или откат приводили к тому же конечному состоянию, а не дублировали работу. Когда шаг завершается сбоем на полпути, агент выполняет компенсации уже завершённых шагов в обратном порядке, вместо того чтобы оставить систему в наполовину применённом состоянии. Автоматического ACID-отката между сервисами не существует, поэтому компенсации явно проектируются как логическая противоположность каждого действия. В отличие от `durable-execution`: тот сохраняет и воспроизводит запуск, чтобы он мог продолжиться до завершения после сбоя, тогда как этот паттерн определяет, как семантически отменить уже зафиксированные побочные эффекты, когда доведение до завершения перестаёт быть правильным исходом.
За 30 секунд
- Что это
- Сопоставляет каждому прямому действию явное компенсирующее действие, отменяющее его бизнес-эффект, и использует ключи идемпотентности, чтобы повторы и откаты сходились к одному состоянию.
- Когда применять
- Многошаговые рабочие процессы между сервисами, где сбой на середине требует отменить уже зафиксированные побочные эффекты без автоматического ACID-отката.
- Осторожно
- Компенсации должны быть написаны верно и оставаться доступными; сломанная или отсутствующая компенсация оставляет систему в несогласованном состоянии без автоматического восстановления.
Спросите ИИ-эксперта об этом паттерне
Откроет ассистента с готовым вопросом. Вы проверите его перед отправкой.
Обратимые действия и компенсация (сага агента): Обзор
Паттерн, позволяющий безопасно отменять побочные эффекты агента. Структурируйте траекторию как сагу: каждое прямое действие (забронировать рейс, списать средства с карты, создать запись) сопровождается компенсирующим действием, которое отменяет его бизнес-эффект, а каждый инструмент делается идемпотентным с помощью ключа идемпотентности, чтобы повторная попытка или откат приводили к тому же конечному состоянию, а не дублировали работу. Когда шаг завершается сбоем на полпути, агент выполняет компенсации уже завершённых шагов в обратном порядке, вместо того чтобы оставить систему в наполовину применённом состоянии. Автоматического ACID-отката между сервисами не существует, поэтому компенсации явно проектируются как логическая противоположность каждого действия. В отличие от `durable-execution`: тот сохраняет и воспроизводит запуск, чтобы он мог продолжиться до завершения после сбоя, тогда как этот паттерн определяет, как семантически отменить уже зафиксированные побочные эффекты, когда доведение до завершения перестаёт быть правильным исходом.
- Every forward action paired with a compensating action (semantic undo)
- Idempotency keys make retries and rollbacks converge to the same end state
- Ordered rollback of completed steps on mid-trajectory failure
- Check-before-act and upsert guards prevent duplicate side effects
- No automatic ACID rollback: compensations are explicitly authored
- Distributed side effects modeled as a saga of local transactions
The Agent Architect
Один паттерн, один компромисс, одна история сбоя в продакшене. Короткий еженедельный брифинг для тех, кто строит агентные системы.
Одно письмо в неделю, отписка в один клик. Адрес используется только для рассылки брифинга.
Источники
Статьи, спецификации и репозитории, на которых основан этот паттерн.
От инженера, создавшего этот каталог
Проведите ревью архитектуры ваших агентов
На этой странице описан один паттерн. Ваша система использует десятки, и большинство сбоев возникает на стыках. Мы разберём весь дизайн по 288 паттернам каталога: архитектура, надёжность, оценка и стоимость, каждая находка связана с паттерном, который её устраняет.
€750 вместо €1 500, одна неделя, письменный отчёт и разбор в звонке, до 30 сентября