Files
dotfiles/agents/.agents/skills/codex-subagent-playbook/references/review-and-triage.md
T
ddadmin ba9f4736ff docs(codex-subagent-playbook): обновлены правила выбора моделей
- Зачем:
  - уточнены роли моделей и подход к их выбору в конвейере субагентов.
- Что:
  - добавлена матрица цены, интеллекта, вкуса и качества текста.
  - Terra назначена отправной точкой для технических задач.
  - дополнены наблюдения о ревью и длительных сессиях Claude.
- Проверка:
  - git diff --cached --check.
2026-09-08 11:06:04 -04:00

15 KiB

Ревью и триаж

Читай этот файл целиком после выбора независимого ревью постановки или реализации. Это единственный подробный договор обзора, разбора находок и перепроверки.

Выбор обзора

Подбирай ревью по неопределенности и цене ошибки. Нативный ревьюер, Claude и свежая Astra - доступные линии. Обязательного набора нет. Отдельные основания: свежий контекст ловит предположения автора, другое семейство моделей замечает иные слепые зоны, Astra судит об устройстве и соразмерности. Одного обзора достаточно, если он закрывает существенный риск. Две сфокусированные линии оправданы, когда их независимый вклад стоит цены.

Для ревью формы и сопровождаемости бери подходящую линзу из шаблонов поручений.

Для двух линий заранее раздели фокус, например:

  • соответствие задаче, границам и наблюдаемому результату;
  • корректность, межмодульные инварианты, регрессии и честность проверок.

Перед первым обзором каждой линии зафиксируй проверяемую версию артефакта. Одна линия делает один общий обзор этой версии. Не запускай новый общий обзор той же линии без изменения версии или нового основания; точечные исправления проверяются узко.

Автор часто предпочитает Opus для независимой проверки корректности кода и соразмерности изменений. Если же Opus недоступен - тогда его хорошо заменит Astra.

Мандат и независимость

Исходный обзор запускается в свежем контексте без истории исполнителя и других ревьюеров. Ревьюер получает постановку, точные границы версии, свой фокус, доступные проверки и уникальный путь отчета. Он самостоятельно сверяет факты, а утверждения других агентов считает гипотезами до подтверждения.

Ревьюеру разрешены чтение, тесты, доступная сеть, документация и временные файлы, нужные для проверки. Его мандат запрещает менять исходники, Git, службы, данные и другое постоянное состояние. Результат обзора - назначенный отчет; временные кэши и выводы инструментов допустимы. Координатор остается владельцем общего дерева и стенда и при необходимости сверяет их состояние до и после обзора.

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

Отчет ревьюера

Ревью возвращает проверяемые утверждения. Каждая находка получает устойчивый идентификатор с уникальным префиксом линии. Сохраняй идентификатор во всех следующих разборах и перепроверках. Полная запись содержит:

PREFIX-N | location | violated criterion | failure scenario | evidence |
minimal verification

Существенный риск безопасно отложенного решения можно записать как неблокирующее соображение без идентификатора, тяжести и влияния на вердикт. Если проект или линия уже задает шкалу, добавь в запись тяжесть и считай ее. Замечание о стиле без проверяемого ущерба остается соображением и не требует исправления. CHANGES_REQUESTED означает, что версия содержит хотя бы один дефект, который нужно исправить на ее собственном уровне. APPROVED означает отсутствие такого дефекта.

Даже при нуле находок отчет называет просмотренный объем, проверенные гипотезы, запущенные команды и их результаты. Голый вердикт без свидетельств не засчитывается. Сообщение координатору может содержать только вердикт, доступные счетчики, по одной строке на идентификатор и на каждое существенное неблокирующее соображение, а также путь к подробному отчету.

Разбор находок

Каждую находку сначала проверяют на трех осях: фактическая верность, применимость сценария к этому проекту и соразмерность исправления. Предложение ревьюера - один из вариантов. Исполнитель может закрыть дефект более подходящим путем. Аргументированное отклонение имеет тот же статус, что и подтвержденное исправление; квота отклонений не нужна.

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

Находки реализации разбирает исполнитель с контекстом кода. Он получает подробные отчеты напрямую. Координатор добавляет только решения уровня задачи, совпадения или противоречия линий. Каждый идентификатор получает один исход:

  • FIXED - дефект подтвержден и исправлен; названы способ и проверка;
  • REJECTED - утверждение не подтвердилось, неприменимо к проекту или не описывает дефект по действующему договору; приведены контракт и доказательство;
  • OUT_OF_SCOPE - решение меняет согласованные границы;
  • NEEDS_DECISION - требуется выбор цели, устройства или остаточного риска.

OUT_OF_SCOPE и NEEDS_DECISION поднимаются координатору с вариантами, последствиями, стоимостью и рекомендацией исполнителя. Координатор не заменяет этот разбор молчаливым решением. Подробный файл резолюций сохраняет связь между исходной находкой, ее исходом и проверкой.

Отклонение предложенного способа починки само по себе не закрывает подтвержденный применимый дефект. Такой дефект получает соразмерное FIXED, либо решение владельца через OUT_OF_SCOPE или NEEDS_DECISION.

Перепроверка

Точечные исправления и отклонения проверяет тот же ревьюер в продолжении исходного контекста. Он читает собственный отчет, резолюции и измененную версию, затем проверяет исходные идентификаторы и только соседние изменения. Для каждого FIXED или REJECTED он возвращает CLOSED, NOT_CLOSED, REJECTION_VALID или REJECTION_INVALID с кратким доказательством. OUT_OF_SCOPE и NEEDS_DECISION переносятся в индекс без изменения: ревьюер их не пересматривает и не включает в свой вердикт. Они остаются открытыми до решения владельца.

Для FIXED ревьюер отдельно оценивает соразмерность починки: PROPORTIONATE либо OVERREACH с объяснением лишнего охвата. Для REJECTED он судит по аргументу и проверке; совпадение со вкусом не требуется. Узкая область не требует скрывать замеченный рядом новый дефект: такой дефект получает новый устойчивый идентификатор и возвращается владельцу триажа.

Выбранная линия ревью закрывается после начального APPROVED без открытых вопросов либо после успешных нужных перепроверок и разрешения владельцем всех вынесенных вопросов. Полномочный владелец также может явно записать принятие оставшегося риска. Вердикт одной линии не закрывает открытые идентификаторы другой.

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

Когда работа не сходится

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

Третий круг - практическое напоминание явно объяснить пользователю или полномочному владельцу, почему работа не сходится, сколько стоит продолжение и какой подход меняется. Пятый круг - напоминание не начинать еще один повтор без явного решения. Это ориентиры наблюдения; обязательных этапов и автоматических запросов разрешения здесь нет.

Доказательства для координатора

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

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

Особенности ревьюеров

Sol склонен требовать несоразмерных исходным целям правок.