
Правильная агентская архитектура в 2026 г. Часть 2. Durable state: approvals, session context и background jobs
kobubu 12 минут назад Правильная агентская архитектура в 2026 г. Часть 2. Durable state: approvals, session context и background jobs 13 мин 223 Искусственный интеллект Python * Туториал Продолжение статьи Твой ии-агент...
Anthropic — What company has the best second artificial intelligence model at the end of June?
В сфере искусственного интеллекта произошло заметное событие. kobubu 12 минут назад Правильная агентская архитектура в 2026 г. Durable state: approvals, session context и background jobs 13 мин 223 Искусственный интеллект Python * Туториал Продолжение статьи Твой ии-агент мог бы сыграть в сериале "Кибердеревня"В прошлой серии Мы поняли, что скелетом агента является долговременное состояние (durable state). Именно оно должно позволить ответить на скучные, но жизненно важные вопросы: какой ход активен, какой шаг уже выполнен, какой job держит lease, какой файл был исходным, какой результат можно выдать пользователю, какое подтверждение еще действительно.
В первой части мы разложили durable state на ход агента, шаг плана и событие. У нас появились такие сущности, как AgentTurn, AgentPlanItem, AgentEvent, и агент уже перестает быть нервным генератором текста, который живет ровно до первого рестарта процесса. Нужны еще разрешения, состояние диалоги/сессии, состояние проекта, фоновые задачи, механизм обработки фоновых задач (lease), счетчик и политика повторов, закладка событий (event cursor) и санитарная обработка payload-ов (payload sanitizer).
Технические детали
Что добавляется после AgentTurn, AgentPlanItem и AgentEventМинимальный набор первой части можно расширить так:СущностьЧто хранитЗачем нужнаApprovalGrantВыданное пользователем разрешениеНе спрашивать повторно одно и то же действие в рамках допустимого scopeSessionContextАктивный turn, профиль агента, краткую историю, pending approvalВосстановить диалог и текущую сцену сессииProjectContextАктивный проект, файлы, настройки, текущую операциюНе дать двум тяжелым операциям одновременно менять один проектBackgroundJobДлинную операцию вне HTTP-запросаНапример, парсинг, workbook-операции, retry, progress, cancellationWorkerHeartbeatПрисутствие и занятость исполнителяОтличить долгую работу от умершего worker-аDurable payload policyПравила сохранения payload-овНе складывать base64, секреты и гигантские строки в event logApprovalGrant: подтверждение тоже должно быть durableApproval - это юридически важная запись о том, что пользователь разрешил действие с конкретным scope. Если подтверждение живет только в памяти процесса, то после рестарта агент снова спросит то же самое или, что хуже, решит продолжить без понятного основания. Разрешения привязаны к session_id, project_id, tool_name, mode, scope и expires_at.
Это правильная форма: подтверждение не становится вечным. Пользователь мог разрешить править файлы на этом проекте, но это не значит, что агент получил право трогать все проекты, все файлы и все будущие операции. Хороший approval grant должен быть узким.
В идеале scope описывает не человеческую фразу «можно», а машинно проверяемые границы: project_id, tool_name, режим only_missing, срок действия. Тогда executor может принять решение без повторного похода к LLM.
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.





