Graph Engineering: состояние и доказательства

Семь коротких правил о состоянии, переходах, проверках и восстановлении производственного AI-графа.

Серия 04 · 7 эпизодов

Главное из серии

  1. 01Состояниефакты вне контекста модели
  2. 02Переходвычислимое условие маршрута
  3. 03Доказательствонезависимый сигнал качества
  4. 04Восстановлениепродолжение без повтора эффекта

Состояние и переходы

Красивые узлы не превращают цепочку агентов в производственный workflow. Для этого нужно состояние, которое живёт вне разговора с моделью: принятая версия спецификации, проверенный commit, результаты тестов, полученные разрешения и причина следующего перехода.

Модель нужна там, где остаётся неоднозначность: понять требование, предложить исправление или найти риск. Если ответ можно вычислить, маршрут должен выбирать обычный код. Нулевой код завершения открывает проверку, невалидная схема возвращает работу назад, а денежная операция останавливается перед человеком.

Так свобода остаётся внутри узла, а границы между узлами становятся строгими и воспроизводимыми.

Независимое доказательство

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

Полезный reviewer получает артефакт и отдельный критерий приёмки. Он сам запускает тесты, сравнивает поведение со спецификацией и имеет право остановить маршрут. Иногда лучший reviewer — не модель, а компилятор, проверка схемы или браузерный тест.

Перед следующим шагом проверьте:

  • результат привязан к конкретной версии кода;
  • сигнал получен другим способом, а не пересказан исполнителем;
  • провал проверки меняет маршрут;
  • дорогое или необратимое действие требует отдельного разрешения.

Восстановление и replay

Checkpoint хранит не обещание агента, а проверяемые факты: версию плана, commit, артефакты, результаты проверок и незавершённый шаг. После падения новый запуск продолжает работу, а не пересобирает весь контекст с нуля.

Для внешнего эффекта одного checkpoint недостаточно. Повторный запрос должен использовать стабильный ключ операции и возвращать сохранённый результат без второго списания, письма или деплоя. Если это невозможно, системе нужен компенсирующий маршрут.

Лог тоже должен описывать не только диалог, но и решение системы: вход и выход узла, изменение состояния, причину перехода, число повторов и вмешательство человека. Тогда ошибку можно воспроизвести на том же состоянии и доказать, что исправление действительно сработало.

Хороший граф — это самый короткий путь, который умеет доказать результат, безопасно пережить сбой и не повторить уже совершённое действие.