Process: Rollback

Откат действий при ошибке — от автоматического до human-managed.

Trigger

  • Агент обнаружил ошибку (через эскалацию)
  • Agent-Judge ретроспективно нашёл проблему
  • Human Owner запросил откат

Классификация обратимости

Fully Reversible

ДействиеОткат
Запись в БДDELETE / UPDATE
Черновик документаУдалить
Task createdMark cancelled
Memory entryArchive (relevance → 0)

Partially Reversible

ДействиеОткатОграничение
Файл изменёнRestore из backupКопии могут остаться
Конфиг изменёнRestoreЭффекты в памяти процессов
Memory sharedArchiveАгенты могли уже использовать

Irreversible

ДействиеCompensating action
Отправленные сообщенияFollow-up correction
ПлатежиRefund (human only)
ПубликацииDelete + correction notice
Физические действия

Правило: irreversible действия только через human approval (Codex Red Lines).

Шаги

1. Request

Кто инициирует:

2. Impact Analysis

Определяем:

  • Что сделано — из audit log (security_audit_log, runs)
  • Что затронуто — downstream tasks, memory entries, artifacts
  • Что обратимо — классификация по таблице выше

3. Approval

ТипImpactApprover
Fully reversibleLowAgent-CEO автоматически
Fully reversibleHigh (>5 entities)Human Owner
Partially reversibleAnyHuman Owner
IrreversibleAnyHuman Owner + документирование

4. Execution

  • Специальный Rollback Agent (future) или Agent-CEO
  • Каждый шаг отката логируется
  • Audit record с reference на original action
{
  "type": "rollback",
  "original_action_id": "uuid",
  "rollback_steps": [
    {"action": "delete_artifact", "id": "uuid", "status": "done"},
    {"action": "cancel_task", "id": "uuid", "status": "done"}
  ],
  "initiated_by": "human",
  "approved_by": "human"
}

5. Root Cause Analysis (обязательно)

После каждого rollback:

  • Почему ошибка произошла?
  • Нарушение процесса? → fix process
  • Плохой промпт? → fix role config
  • Policy gap? → update Policy-Layer
  • Результат → обновление Manifest или ADR

Что НЕ откатывается

ЧтоПричина
Логи и auditAppend-only, integrity
Outgoing communicationsТолько compensating actions
Changes observed by third partiesТолько correction notice

Compensating Actions

Когда полный откат невозможен:

СитуацияCompensating actionApproval
Sent email с ошибкойFollow-up correction emailHuman
Wrong post publishedCorrection/delete + noticeHuman
Incorrect decision communicatedExplicit retractionHuman

Метрики

МетрикаTarget
rollbacks_per_month→ 0 (снижается)
time_to_rollback< 1 час для reversible
rollback_root_causesTracked: prompt / data / policy gap
repeat_rollbacks0 (same root cause twice = process failure)

Связанные документы