Состав прогона постоянный: гейт, спеки, код, триаж; приёмник тем идёт, когда у проекта есть свои темы. Метка, разметка и проход review-scope упразднены, review-levels.md удалён, ось «метка» снята из axes.md. Ступень 4 ушла из цикла: review-proof упразднён через день после заведения, review-architecture переехал в code-deep-review вслед за adversary и ops. Темы security, operations и architecture закрывает review-code сверкой с записанными инвариантами, потолком 1 находка. Умолчание разметки действий перевёрнуто на инлайн; развилка осталась за необратимым, изменением дельта-спек и нарушенным инвариантом. Задачи из урожая заводятся по слову человека, а не шагом сценария. Чекпоинт назван единственным местом, где решается форма решения. Потеряны ось времени в цикле и суждение о форме после кода — обе потери названы в «Честном пределе» строкой границ покрытия. Журнал — тема 77.
10 KiB
77. Цикл задачи проверяет механику; метки сняты (2026-08-23)
Что было
Тема 76 вынесла тяжёлые проходы в av-dev:code-deep-review и оставила в цикле
лёгкий review-proof. Это сократило прогон, но не ответило на вопрос, что
именно цикл задачи обязан проверять.
Владелец процесса назвал рамку прямо. Проекты — небольшие приложения для себя,
без сложных доменов; агент в них второй пилот и советник, а за архитектурные
решения отвечает человек; ценится срок задачи и короткие итерации, чтобы вовремя
менять дизайн и требования. Отсюда два способа работы и разрез между ними:
av-dev:code-resolve решает задачу быстро и в рамках существующих
договорённостей, а av-dev:code-deep-review думает вдумчиво, обсуждает находки и
заводит работы.
Конвейер этому разрезу не соответствовал в трёх местах.
Цикл судил замысел. На метке large шли review-proof (риск рассуждением) и
review-architecture («не появился ли второй способ», «что опытный человек
отсюда удалил бы»). Обе оптики дают находки, по которым решает человек, — то есть
предмет глубокого ревью, а не быстрого прогона.
Разметка стоила запуска, а решала всё меньше. review-scope — отдельный
агент на 404 строки, две оси, матрица, отрицательный тест, доли по журналу,
справочник review-levels.md на 175 строк. Со снятой ступенью 4 метка правила
только вход и потолки двух проходов.
Хвост требовал человека там, где не должен. Урожай отдавался
av-dev:task-track как обязательный шаг: задачи заводились, а не предлагались.
Правило разметки действий гласило «сомневаешься — ставь развилку», то есть
умножало вопросы к человеку внутри прогона, который заведён ради скорости.
Решено
Р301. Цикл задачи проверяет корректность и механику против записанного
критерия. Дельта-спеки, конвенции, инварианты CLAUDE.md, вывод инструментов.
Вопрос «то ли это решение» в цикле не задаётся вовсе: у него два своих места —
чекпоинт до кода, где форму одобряет человек, и скилл av-dev:code-deep-review,
где находки разбирают по одной.
Р302. Состав прогона постоянный, метки нет. Гейт, specs, code, триаж;
basics идёт тогда и только тогда, когда у проекта есть свои темы. Ось «метка»
снята из shared/axes.md, справочник review-levels.md удалён, устав
review-scope удалён.
Р303. Ступень 4 ушла из цикла целиком. review-proof упразднён, его устав
удалён; review-architecture переехал в av-dev:code-deep-review вслед за
adversary и ops. Прожил proof один день — с темы 76 до этой; он был
правильным шагом в неверную сторону: облегчал проход, тему которого цикл вообще
не должен разбирать.
Р304. Темы security, operations и architecture в цикле закрывает code
сверкой с записанными инвариантами, потолком 1 находка на три темы разом.
Свойства, которого нет в инвариантах, цикл не спросит. Это не «глубина ниже», а
другой дом темы, и он называется строкой в каждом отчёте.
Р305. Вход и потолки проходов стали постоянными. code читает дом конвенций
целиком, specs — дельту, актуальные спеки, design.md, tasks.md, паспорт и
обзор архитектуры. Потолки: code — 4 конвенционных, 1 инвариантная, у
технической половины потолка нет; specs — нет; basics — 4; триаж — 7.
Обеим половинам потолка не ставят намеренно: пропуск дефекта и пропуск
расхождения со спекой не оставляют следа нигде.
Р306. Умолчание разметки действий — инлайн. Прежнее правило «сомневаешься —
развилка» перевёрнуто. Развилку получают три случая, и все названы: правка меняет
дельта-спеки, находка сидит в необратимом месте, находка трогает
инвариант CLAUDE.md.
Р307. Задачи из урожая заводятся только по слову человека. Список
показывается одной репликой; сказал «заводим» — зовётся av-dev:task-track, не
сказал — урожай остаётся строками доклада. Прежде вызов был обязательным шагом
сценария.
Р308. Отрицательный тест small заменён адресацией. Изменение, которое после
мерджа не откатывается обратной правкой, прежде поднимало метку; поднимать нечего,
и признак теперь меняет адресата находки — она уходит человеку развилкой, а не
чинится молча.
Р309. Сигнал «метка занижена» стал сигналом «изменение просит глубокого
ревью». Признаки те же — несколько слоёв разом, нащупанная по ходу форма, новое
понятие, необратимое место; адресат другой: человек, который решает, звать ли
глубокий прогон. Носитель прежний — review-code, подтверждающий — review-basics.
Р310. Строки «отложено в av-dev:code-deep-review» сводит триаж. Пишут их
проходы, упёршиеся в предел цикла; не сведённые в одну секцию, они растворяются
по отчётам, и повод позвать глубокий прогон не копится нигде.
Следствия
С268. Шагов в сценарии решения стало восемь. Разметка ушла, нумерация сдвинулась: ревью кода теперь шаг 5, архивация с синком — 6, коммит — 7, закрытие — 8.
С269. Чекпоинт стал единственным местом, где решается форма решения. До этой темы у формы было два суждения — человека на чекпоинте и архитектурного прохода после кода. Осталось одно, и это записано прямо: одобренное на чекпоинте уезжает в код без второго суждения о замысле.
С270. Ось времени в цикле не смотрит никто. Обратима ли миграция, что станет
с записями после отката, как узел ведёт себя через неделю роста — прежде эти
вопросы задавал basics на метке medium. Развилка по необратимому месту
адресатом их не заменяет: она срабатывает, только если находку кто-то сделал.
Названо строкой «Честного предела», а не подразумевается.
С271. Сверка состава подешевела. Реестр тем был переменным — приезжал планом разметки и на каждой задаче выглядел иначе. Постоянный реестр сверяется взглядом: проходов пять, отчёт от каждого либо есть, либо назван непущенным.
С272. Скелет docs/review.md потерял «Триггеры метки» и получил «Когда звать
глубокое ревью». Два списка вместо трёх: области, которые смотрят целиком, и
что в этом проекте считается необратимым. Второй список работает и в цикле —
им проверяется основание развилки.
С273. Нарезка задач перестала опираться на метку. Шов теперь ищется по роду работы, а не по тому, где падает метка; костяк ревью разрез удваивает всегда, и выигрыш даёт не проверка, а то, что половина доводится и мерджится сама.
С274. Общий словарь канона с конвейером сузился до категорий и тем. Имена меток из него ушли — вместе с самими метками.