Справочник SENAR: Требования к инструментарию
Что должны уметь инструменты для работы по SENAR. Требования разделены на два уровня:
- Базовая/Начальная — минимум для конфигураций SENAR Базовая (1 пара) и Начальная (1–3 пары), уровень зрелости 2
- Командная+ — полные требования для конфигураций SENAR Командная и Корпоративная (3+ пар, уровень зрелости 3+)
SENAR не привязан к конкретным инструментам. Здесь описаны требования к возможностям, а не рекомендации продуктов.
1. Трекер задач
Трекер задач — это система записи для всех единиц работы. Каждая задача, история и инкремент живут здесь.
1.1 Обязательные поля
| Поле | Тип | Базовая/Начальная | Командная+ | Примечания |
|---|
goal | Текст | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Что задача должна выполнить, сформулированное как результат |
acceptance_criteria | Текст | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Проверяемые условия завершения задачи |
status | Перечисление | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Минимум состояний: planning, active, done, blocked |
work_type | Перечисление | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Значения: dev, arch, qa, docs, infra, ops |
complexity | Перечисление | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Значения: trivial, simple, moderate, complex |
story_id | Ссылка | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Связь с родительской историей или требованием |
requirement_link | Ссылка | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Ссылка прослеживаемости к BR/SR/TR (Standard 3.21) |
requirement_level | Перечисление | — | ОБЯЗАТЕЛЬНО | Значения: BR, SR, TR — уровень связанного требования |
requirement_status | Перечисление | — | ОБЯЗАТЕЛЬНО | Значения: draft, approved, verified, deprecated |
requirement_parent | Ссылка | — | ОБЯЗАТЕЛЬНО | Ссылка на родительское требование (для навигации по иерархии) |
attempt_count | Целое число | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Число попыток реализации (для расчёта FPSR) |
created_at | Временная метка | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Автоматически при создании |
started_at | Временная метка | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Автоматически при переходе в active |
completed_at | Временная метка | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Автоматически при переходе в done |
session_id | Ссылка | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Какая сессия завершила эту задачу |
supervisor_id | Ссылка | — | ОБЯЗАТЕЛЬНО | Кто наблюдал за этой задачей |
bypass_reason | Текст | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Обоснование, если какой-либо шлюз качества был обойдён |
knowledge_refs | Список | — | РЕКОМЕНДУЕТСЯ | Ссылки на релевантные записи базы знаний |
cross_deps | Список | — | ОБЯЗАТЕЛЬНО | Ссылки на межпроектные зависимости |
cost | Числовое | — | РЕКОМЕНДУЕТСЯ | Стоимость токенов/API для этой задачи |
1.2 Обязательные автоматизации
| Автоматизация | Базовая/Начальная | Командная+ | Описание |
|---|
| Валидация полей QG-0 | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Блокировать переход в active, если goal и acceptance_criteria пусты |
| Временные метки переходов состояний | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Автоматическая фиксация started_at, completed_at при смене состояния |
| Правила перехода состояний | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Обеспечение допустимых переходов: planning -> active -> done; blocked может входить/выходить из любого состояния |
| Инкремент счётчика попыток | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Увеличение attempt_count при каждом возврате задачи из done в active |
| Свёртка завершения историй | — | ОБЯЗАТЕЛЬНО | Автоматический расчёт статуса истории из статусов дочерних задач |
| Отслеживание прогресса инкремента | — | ОБЯЗАТЕЛЬНО | Дашборд с процентом завершения инкремента |
| Отслеживание обходов | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Запись, какой шлюз был обойдён, кем и с каким обоснованием |
| Обнаружение дубликатов | — | РЕКОМЕНДУЕТСЯ | Предупреждение, когда цель новой задачи близко совпадает с существующей |
| Обнаружение осиротевших требований | — | РЕКОМЕНДУЕТСЯ | Выявление требований без задач реализации и задач без требований |
| Анализ влияния изменения требования | — | РЕКОМЕНДУЕТСЯ | При изменении BR/SR — список всех затронутых нижестоящих артефактов |
1.3 Обязательные отчёты
| Отчёт | Базовая/Начальная | Командная+ | Описание |
|---|
| Пропускная способность | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Задач, завершённых за сессию, с трендом во времени |
| Распределение Lead Time | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Гистограмма completed_at - created_at, с разбивкой по сложности |
| FPSR | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | % задач, завершённых с attempt_count = 1 |
| DER | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | % задач с дефектами, обнаруженными после статуса done |
| Сводка статусов задач | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Количество задач по статусам, с фильтрацией по инкременту/сессии |
| Cycle Time | — | ОБЯЗАТЕЛЬНО | Распределение completed_at - started_at |
| Стоимость задачи | — | ОБЯЗАТЕЛЬНО | Общая стоимость / выполненные задачи, с разбивкой по сложности и типу работы |
| Предсказуемость затрат | — | ОБЯЗАТЕЛЬНО | Факт vs план по стоимости за инкремент |
| Доля обходов | — | ОБЯЗАТЕЛЬНО | Обходы шлюзов / всего оценок шлюзов, по типу шлюза |
| Нагрузка супервайзера | — | РЕКОМЕНДУЕТСЯ | Задач на супервайзера за сессию, с учётом сложности |
| Статус кросс-зависимостей | — | ОБЯЗАТЕЛЬНО | Статус всех межпроектных зависимостей |
2. Конвейер CI/CD
Автоматизированное обеспечение QG-2 (шлюз реализации) и поддерживающая инфраструктура для QG-3 и QG-4.
2.1 QG-2: Шлюз реализации (автоматизированный)
Все проверки выполняются при каждом коммите или мерж-реквесте. Конвейер должен блокировать мерж при провале любой проверки.
| Проверка | Базовая/Начальная | Командная+ | Примечания |
|---|
| Юнит-тесты проходят | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Требуется 100% прохождение |
| Проверка типов проходит | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | В зависимости от языка: TypeScript strict, mypy и т.д. |
| Линтер проходит | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Политика нулевых предупреждений (не только ошибок) |
| Сканирование безопасности (зависимости) | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Обнаружение известных CVE в зависимостях |
| Сканирование безопасности (SAST) | — | РЕКОМЕНДУЕТСЯ | Статический анализ на антипаттерны безопасности |
| Сборка успешна | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Чистая сборка с нуля, без кэшированного состояния |
| Порог покрытия тестами | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Настраиваемый минимум (рекомендация: 70%+) |
| Обнаружение изменений зависимостей | — | РЕКОМЕНДУЕТСЯ | Пометка новых зависимостей для проверки |
| Обнаружение breaking changes | — | РЕКОМЕНДУЕТСЯ | Проверка совместимости API для общих интерфейсов |
Требования к конфигурации конвейера:
| Требование | Базовая/Начальная | Командная+ |
|---|
| Конвейер запускается автоматически при push/MR | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО |
| Конвейер блокирует мерж при провале | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО |
| Результаты конвейера видны супервайзеру | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО |
Без allow_failure — каждая задача либо работает, либо удаляется | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО |
| Время выполнения конвейера < 10 минут | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО |
| Конвейер предоставляет ясные сообщения об ошибках | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО |
| Конвейер версионируется (pipeline-as-code) | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО |
2.2 QG-3: Шлюз верификации (ревью)
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Защита ветки main/production | — | ОБЯЗАТЕЛЬНО | Запрет прямого push |
| Мерж-реквест обязателен | — | ОБЯЗАТЕЛЬНО | Все изменения через MR |
| Минимум 1 одобрение | — | ОБЯЗАТЕЛЬНО | Одобряющий должен отличаться от супервайзера, создавшего MR |
| Интеграция чеклиста ревью | — | РЕКОМЕНДУЕТСЯ | Чеклист проверки AI-вывода (Guide 02) встроен в шаблон MR |
| Одобрение не может быть от автора MR | — | ОБЯЗАТЕЛЬНО | Обеспечение независимой верификации |
| Инвалидация устаревшего одобрения | — | РЕКОМЕНДУЕТСЯ | Повторное одобрение после новых коммитов |
2.3 QG-4: Шлюз приёмки (развёртывание)
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Staging-окружение существует | — | ОБЯЗАТЕЛЬНО | Зеркалирует конфигурацию продакшена |
| Развёртывание на staging автоматизировано | — | ОБЯЗАТЕЛЬНО | Тот же конвейер, что и для продакшена, другая цель |
| Этап верификации на staging | — | ОБЯЗАТЕЛЬНО | Ручной или автоматизированный приёмочный тест на staging |
| Развёртывание в продакшен требует явного одобрения | — | ОБЯЗАТЕЛЬНО | Человеческий шлюз — не авто-деплой при мерже |
| Возможность отката | — | ОБЯЗАТЕЛЬНО | Возможность откатиться к предыдущей версии за считанные минуты |
| Отслеживание развёртываний | — | ОБЯЗАТЕЛЬНО | Запись что развёрнуто, когда, кем |
| Smoke-тесты после развёртывания | — | РЕКОМЕНДУЕТСЯ | Автоматическая верификация успеха развёртывания |
| Feature flags | — | РЕКОМЕНДУЕТСЯ | Возможность отключить функции без повторного развёртывания |
3. База знаний
База знаний — это долговременная память проекта. У AI-агентов нет памяти между сессиями — база знаний сохраняет знания.
3.1 Основные требования
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Полнотекстовый поиск | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Супервайзер и AI-агент должны иметь возможность поиска по ключевым словам |
| Категоризация по типу записи | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Минимум типов: decision, pattern, gotcha, dead_end, observation |
| Запись имеет заголовок и тело | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Заголовок для беглого просмотра, тело для деталей |
| Запись имеет временную метку создания | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Когда это знание было создано |
| Запись имеет тег проекта/области | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | К какому проекту или области относится это знание |
| Версионирование записей | — | ОБЯЗАТЕЛЬНО | Отслеживание изменений записей знаний во времени |
| Отслеживание актуальности | — | ОБЯЗАТЕЛЬНО | Временная метка last_reviewed, обновляемая при подтверждении актуальности |
| Статус записи | — | ОБЯЗАТЕЛЬНО | Значения: current, needs_review, deprecated |
| Перекрёстные ссылки между записями | — | РЕКОМЕНДУЕТСЯ | Связь между связанными записями знаний |
| Массовый экспорт | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Экспорт всех записей в переносимом формате (JSON, markdown) |
| Отслеживание автора записи | — | ОБЯЗАТЕЛЬНО | Кто создал или последним обновил запись |
3.2 Типы записей
| Тип | Назначение | Пример |
|---|
decision | Архитектурный или проектный выбор с обоснованием | «Мы используем UUID для всех ID сущностей, потому что…» |
pattern | Повторно используемый подход для типовых задач | «Обработка ошибок в API-эндпоинтах следует такой структуре…» |
gotcha | Неочевидное поведение, вызывающее проблемы | «CouchDB bulk_docs молча игнорирует конфликты, если не…» |
dead_end | Подход, который был опробован и отвергнут, с обоснованием | «Пробовали WebSockets как замену SSE — не сработало, потому что…» |
observation | Эмпирический вывод, заслуживающий запоминания | «Время сборки увеличивается в 2 раза при запуске TypeScript strict mode на…» |
template | Повторно используемый шаблон требований/КП для типовых задач | «КП REST API эндпоинта: 1. Возвращает 200 при валидном вводе. 2. Возвращает 401 без аутентификации…» |
3.3 Интеграция с AI-агентом
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| AI-агент может искать в БЗ во время сессии | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Через вызов инструмента/функции или инъекцию контекста |
| AI-агент может создавать записи БЗ во время сессии | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Тупиковые подходы и подводные камни, обнаруженные в ходе работы |
| Релевантные записи БЗ инъектируются в контекст сессии | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | На основе области задачи, проекта или явных ссылок |
| AI-агент может обновлять существующие записи БЗ | — | ОБЯЗАТЕЛЬНО | Исправление или расширение существующих знаний |
| Результаты запросов к БЗ структурированы | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Заголовок, тип, тело, актуальность — не сырой текстовый дамп |
| Доступ к БЗ ограничен по области | — | ОБЯЗАТЕЛЬНО | Агент видит знания релевантного проекта, а не всё подряд |
| Создание записи БЗ запускает очередь на проверку | — | РЕКОМЕНДУЕТСЯ | Человек проверяет записи знаний, созданные AI |
3.4 Управление актуальностью
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Записи старше N инкрементов помечаются для проверки | — | ОБЯЗАТЕЛЬНО | Настраиваемый порог (рекомендация: 3 инкремента) |
| Отчёт по актуальности доступен | — | ОБЯЗАТЕЛЬНО | Распределение возрастов записей, количество по статусам |
| Устаревшие записи исключены из контекста AI | — | ОБЯЗАТЕЛЬНО | Устаревший контекст хуже отсутствия контекста |
| Обзор качества включает аудит актуальности БЗ | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Часть чеклиста церемонии |
4. Управление сессиями
Сессии — основной ритм работы по SENAR. Инструменты должны поддерживать полный жизненный цикл сессии.
4.1 Жизненный цикл сессии
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Начало сессии с временной меткой | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Фиксация начала сессии |
| Завершение сессии с временной меткой | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Фиксация окончания сессии |
| Сессия имеет уникальный идентификатор | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Для привязки задач, метрик, передач |
| Сессия привязана к супервайзеру | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Кто провёл эту сессию |
| Сессия привязана к проработанным задачам | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Какие задачи были активны в этой сессии |
| Передача предыдущей сессии доступна при старте | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Преемственность контекста |
4.2 Возможности контрольных точек
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Контрольная точка в ходе сессии | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Сохранение состояния контекста без завершения сессии |
| Контрольная точка фиксирует текущий статус задач | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Что в работе, что выполнено |
| Напоминание о контрольной точке | — | РЕКОМЕНДУЕТСЯ | Оповещение с настраиваемым интервалом (например, каждые 40–60 вызовов инструментов) |
| Контрольная точка восстанавливает контекст при сбое сессии | — | РЕКОМЕНДУЕТСЯ | Восстановление после неожиданного завершения сессии |
4.3 Документы передачи
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Документ передачи создаётся при завершении сессии | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Итоги сделанного и план следующих шагов |
| Передача включает завершённые задачи | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Список задач, выполненных в этой сессии |
| Передача включает незавершённые задачи | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Состояние задач, не завершённых |
| Передача включает блокеры/риски | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Что может помешать успеху следующей сессии |
| Передача включает захваченные знания | — | ОБЯЗАТЕЛЬНО | Записи БЗ, созданные или обновлённые в ходе сессии |
| Передача хранится и доступна для поиска | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Исторические передачи доступны для справки |
| Передача загружается автоматически при следующем старте сессии | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Без ручного поиска последней передачи |
4.4 Сбор метрик
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Количество вызовов инструментов за сессию | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Опережающий индикатор сложности сессии и утомления |
| Длительность сессии | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Вычисляется из временных меток начала/конца |
| Задач, завершённых за сессию | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Вход для расчёта пропускной способности |
| Стоимость сессии (токены/затраты на API) | — | ОБЯЗАТЕЛЬНО | Для расчёта стоимости задачи |
| Количество ошибок/повторов | — | РЕКОМЕНДУЕТСЯ | Сколько раз AI требовалась коррекция |
5. Интеграция AI-агента
Требования к настройке, мониторингу и управлению AI-агентами в рамках SENAR.
5.1 Инъекция контекста
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Структурированные инструкции проекта | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Контекст уровня проекта, загружаемый при старте сессии (например, CLAUDE.md, .cursorrules) |
| Инъекция контекста задачи | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Цель, КП и релевантные ограничения предоставлены агенту |
| Инъекция записей БЗ | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Релевантные записи знаний доступны в ходе работы |
| Конвенции кодовой базы | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Стандарты кода, архитектурные паттерны, конвенции именования |
| Границы области | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Явные инструкции «не изменять» |
| Инъекция истории/передачи сессии | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Контекст предыдущей сессии для преемственности |
5.2 Захват вывода
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Изменения кода фиксируются в контроле версий | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Стандартный git-процесс |
| Логи сессий доступны для проверки | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Что AI делал, что супервайзер одобрил |
| Рассуждения AI видимы | РЕКОМЕНДУЕТСЯ | РЕКОМЕНДУЕТСЯ | Почему AI принял конкретные решения (для верификации) |
| Вывод привязан к задаче | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Какая задача породила какие изменения кода |
5.3 Отслеживание стоимости и токенов
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Использование токенов за сессию | — | ОБЯЗАТЕЛЬНО | Входящие + исходящие токены |
| Стоимость API за сессию | — | ОБЯЗАТЕЛЬНО | Денежная стоимость, вычисленная из использования токенов |
| Стоимость задачи (вычисляемая) | — | ОБЯЗАТЕЛЬНО | Стоимость сессии / завершённые задачи |
| Тренд стоимости во времени | — | ОБЯЗАТЕЛЬНО | Процесс становится дороже или дешевле? |
| Бюджетные предупреждения | — | РЕКОМЕНДУЕТСЯ | Оповещение при приближении стоимости сессии/инкремента к бюджету |
| Стоимость по модели/поставщику | — | РЕКОМЕНДУЕТСЯ | При использовании нескольких моделей — отдельное отслеживание стоимости |
5.4 Мультиагентная оркестрация (Командная+)
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Изоляция рабочего пространства | — | РЕКОМЕНДУЕТСЯ | Агенты работают в изолированных средах (worktrees, контейнеры) |
| Коммуникация агент-агент | — | РЕКОМЕНДУЕТСЯ | Делегирование подзадач специализированным агентам |
| Параллельное выполнение агентов | — | РЕКОМЕНДУЕТСЯ | Несколько агентов работают одновременно под наблюдением |
| Агрегация вывода агентов | — | РЕКОМЕНДУЕТСЯ | Сбор результатов от нескольких агентов в единый обзор |
| Профили возможностей агентов | — | РЕКОМЕНДУЕТСЯ | Разные агенты для разных типов задач (код, тесты, документация) |
5.5 Управление конфигурацией агентов
Требования к управлению профилями агентов и операционными скриптами (Standard Section 5).
| Требование | Базовая/Начальная | Командная+ | Примечания |
|---|
| Хранение скриптов в контроле версий | ОБЯЗАТЕЛЬНО | ОБЯЗАТЕЛЬНО | Скрипты хранятся вместе с кодом проекта |
| Версионирование скриптов (история изменений) | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Отслеживание кто, что, когда и зачем изменил |
| Хранение определений профилей | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Профили агентов хранятся как структурированная конфигурация |
| Поддержка переключения профилей | — | РЕКОМЕНДУЕТСЯ | Возможность смены контекста агента между профилями в рамках сессии |
| Ограничение прав по профилю | — | ОБЯЗАТЕЛЬНО | Обеспечение границ чтения/записи для каждого профиля агента |
| Механизм распространения скриптов | — | ОБЯЗАТЕЛЬНО | Распространение изменений скриптов по множеству проектов |
| Возможность отката скриптов | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Откат любого изменения скрипта к предыдущей версии |
| Реестр активных скриптов | — | ОБЯЗАТЕЛЬНО | Инвентарь активных скриптов с идентификаторами версий |
| Аудиторский след изменений скриптов | — | ОБЯЗАТЕЛЬНО | Лог всех модификаций скриптов с обоснованием |
| Инвентарь инструментов по профилю | РЕКОМЕНДУЕТСЯ | ОБЯЗАТЕЛЬНО | Документация, какие инструменты доступны каждому профилю |
| Движок выполнения хуков | — | РЕКОМЕНДУЕТСЯ | Автоматические действия по событиям (пост-сессия, пре-коммит) |
| Метрики эффективности скриптов | — | РЕКОМЕНДУЕТСЯ | Отслеживание FPSR и доли ошибок по версии скрипта |
6. Требования к интеграции
Как компоненты соединяются в работающую инструментальную цепочку SENAR.
6.1 Интеграции Базовая/Начальная
| Интеграция | Описание |
|---|
| Трекер задач <-> Управление сессиями | Сессии ссылаются на задачи; задачи ссылаются на сессии |
| Трекер задач <-> CI/CD | Результаты конвейера привязаны к задачам и мерж-реквестам |
| База знаний <-> AI-агент | Агент может искать, читать и создавать записи БЗ во время сессий |
| Управление сессиями <-> AI-агент | Старт/завершение сессии управляются или координируются с жизненным циклом агента |
6.2 Интеграции Командная+
| Интеграция | Описание |
|---|
| Трекер задач <-> База знаний | Задачи ссылаются на релевантные записи БЗ; записи БЗ ссылаются на породившие их задачи |
| CI/CD <-> Трекер задач | Провалы конвейера автоматически обновляют статус задачи в blocked |
| Управление сессиями <-> Метрики | Метрики сессии автоматически заполняются из данных сессии |
| База знаний <-> CI/CD | Записи БЗ об архитектурных ограничениях обеспечиваются в конвейере (перспективное) |
| Федерация <-> Трекер задач | Статус межпроектных зависимостей синхронизируется |
| Федерация <-> База знаний | Межпроектные знания доступны с надлежащей областью видимости |
7. Руководство по выбору
При оценке вариантов инструментария приоритизируйте:
-
Автоматизация важнее ручного процесса — если шаг можно автоматизировать, автоматизируйте. Ручные шаги — точки отказа (см. Guide 06, PF-3: Нормализация обхода шлюзов).
-
Переносимость важнее функций — данные должны экспортироваться. Привязка к поставщику (Guide 06, OF-3) — известный режим отказа.
-
Доступность для AI важнее удобства для человека — каждое хранилище данных, которым пользуется супервайзер, должно быть доступно AI-агенту. Если AI не может к нему обратиться — для SENAR оно не существует.
-
Простота важнее полноты — трекер задач с 5 хорошо работающими полями лучше трекера с 50 полями, которые никто не заполняет. Начните с Базовая/Начальная и добавляйте Командная+ по мере надобности.
-
Композируемость важнее монолитности — выбирайте инструменты с API-интеграцией, а не универсальные платформы. Компоненты SENAR развиваются с разной скоростью; замена одного не должна тянуть за собой остальные.