Files
dotfiles/agents/.agents/skills/codex-subagent-playbook/references/review-and-triage.md
T
Dmitriy Dementiev 70b18b9e9a fix(codex-playbook): устранены жёсткие допущения в шаблонах
- Зачем:
  - shell-зависимые примеры и конвейерные формулировки сужали применимость оптики.
- Что:
  - сборка подсказок описана платформенно-нейтральным порядком файлов.
  - граница ревью и маршрут актуальных отчётов оставлены гибкими.
  - исправлены входная формулировка и локальная навигация по ролям.
- Проверка:
  - quick_validate.py, git diff --check, Markdown-ссылки и узкая перепроверка агентом.
2026-07-13 13:25:33 +03:00

148 lines
11 KiB
Markdown

# Ревью и триаж
Читай этот файл целиком после выбора независимого ревью постановки или
реализации. Режим и стоимость выбираются в [основной оптике](../SKILL.md);
здесь один авторитетный договор выполнения.
- [Независимость и фокус](#независимость-и-фокус)
- [Файловый маршрут](#файловый-маршрут)
- [Отчёт ревьюера](#отчёт-ревьюера)
- [Владелец триажа](#владелец-триажа)
- [Перепроверка и круги](#перепроверка-и-круги)
- [Что читает координатор](#что-читает-координатор)
## Независимость и фокус
Запускай ревьюера свежей сессией без истории исполнителя и других ревьюеров.
Повторную проверку точечных исправлений продолжает тот же ревьюер: его контекст
находок полезен и не отменяет независимость исходного обзора.
Для двойного ревью разделяй фокусы:
- **по задаче** — соответствие постановке, критериям, границам и ожидаемому
результату;
- **по коду** — корректность, межмодульные инварианты, регрессии, безопасность
и честность тестов.
Давай обоим общую постановку и изменённый объём, но отдельный файл фокуса и
отдельный путь отчёта. Они не знают о второй линии до завершения исходных
обзоров. Разные семейства моделей предпочтительны; две доступные линии одного
семейства всё равно полезны на сложной задаче, если их фокусы различаются.
Ревьюер — наблюдатель с нужными инструментами. Он может читать код, запускать
тесты, проверять гипотезы, создавать временные кэши и писать назначенный файл
отчёта. Исходники, постоянное окружение и Git он не меняет. Координатор
сверяет состояние дерева до и после.
## Файловый маршрут
Назначь каждому участнику уникальные файлы в каталоге задачи внутри
`$SCRATCH`. Временные промпты и отчёты веди на английском.
```text
reviewer -> detailed report file -> triage owner
|
+-> short summary -> coordinator
```
Ревьюер сам пишет полный отчёт в назначенный файл. Координатор не принимает
полный отчёт сообщением и не переписывает его перед передачей. Владелец
триажа читает исходные отчёты напрямую и пишет подробные резолюции в следующий
файл.
Если общий каталог недоступен, верни через контекст компактный индекс без
нарратива. Координатор сразу сообщает партнёру, какой агент не получил доступ,
к какому пути, какой запасной канал использован и что нужно проверить после
задачи. Сбой канала ухудшает экономию контекста, но не отменяет ревью.
## Отчёт ревьюера
Каждая находка получает устойчивый идентификатор с уникальным префиксом
линии: `SPEC-A-N` и `SPEC-B-N` для постановки, `TASK-N` для соответствия
реализации задаче и `CODE-N` для качества кода. Полный файл содержит:
- идентификатор, тяжесть и `файл:строка` либо раздел постановки;
- нарушенный критерий;
- сценарий сбоя и доказательство;
- минимальный способ проверки.
В сообщение координатору верни только:
- `VERDICT: APPROVED | CHANGES_REQUESTED`;
- счётчики по тяжести;
- по одной строке на находку: идентификатор, область, суть и тяжесть;
- абсолютный путь к полному отчёту.
При отсутствии находок полный файл перечисляет просмотренный объём и
выполненные проверки. Голая строка `APPROVED` без подтверждения работы не
засчитывается.
## Владелец триажа
**Постановка.** Координатор принимает или отклоняет каждую находку, потому что
цель, границы и критерии — его решения. Открытое техническое исследование он
может отдать deep-reasoner, но сам читает верхнеуровневые документы и итоговую
постановку. Продуктовый выбор и принятие риска выносит партнёру.
**Реализация.** Пофиндинговый триаж делает исполнитель, у которого есть
контекст кода. Координатор передаёт актуальные подробные отчёты выбранных линий
без изменений и добавляет отдельную короткую шапку: совпадения, противоречия и
возможный выход за границы. Он не сливает и не удаляет «дубликаты».
Для каждого идентификатора исполнитель возвращает один статус:
- `FIXED` — исправлено и названо доказательство;
- `REJECTED` — отклонено через контракт и проверку;
- `OUT_OF_SCOPE` — требует отдельного решения о границах;
- `NEEDS_DECISION` — технического решения недостаточно.
Подробности остаются в файле триажа. Координатор получает по одной компактной
строке `ID | status | essence` на находку, счётчики, вопросы уровня задачи и
путь. Риск и выход за границы решает координатор; техническую истинность
находки — исполнитель и ревьюер.
## Перепроверка и круги
Один круг — назначенные обзоры, триаж его владельца и узкая перепроверка.
Исходный ревьюер читает свой отчёт и файл резолюций, проверяет только свои
находки и соседние изменения. Выбранное независимое ревью закрывается
`APPROVED` либо явным принятием риска полномочным координатором или партнёром.
Координатор получает по одной компактной строке со статусом каждого исходного
или нового идентификатора; подробности остаются в файле перепроверки.
Если идентификатор не закрыт либо появился рядом с исправлением, актуальный
отчёт перепроверки напрямую идёт владельцу следующего триажа. Координатор не
восстанавливает доказательства из компактной сводки.
Повторно поднятое аргументированно отклонённое замечание пометь как спор и
отправь на отдельную узкую проверку усиленного уровня. Полный новый обзор
нужен, когда реализация широко изменилась, исходный отчёт слаб или требуется
новая независимая линия.
Третий круг — точка вмешательства: сообщи партнёру, почему процесс не сходится,
какова стоимость и что меняешь. Координатор может уточнить постановку,
повысить модель или effort, заменить исполнителя свежим сильным агентом,
разделить задачу, назначить усиленный гейт либо принять риск в пределах
мандата.
Пятый круг не начинай автоматически. Сначала прими явное решение и объясни его
партнёру; если полномочий недостаточно, остановись и запроси решение. Это
предохранитель от дорогой вложенной петли, а не запрет координатору управлять
работой.
## Что читает координатор
Краткие строки находок нужны координатору для сравнения линий. Подробный файл
открывай, когда находка меняет границы или риск, ревьюеры противоречат друг
другу, возник спор, сводка непонятна либо без деталей нельзя выбрать следующий
шаг.
Для обычной починки координатор видит переход:
```text
CHANGES_REQUESTED -> triaged -> rechecked -> APPROVED
```
Полный diff, доказательства и журналы читают назначенные агенты. Координатор
углубляется в них по правилам приёмки основной оптики, когда это нужно для его
собственного решения.