Files
dev-skills/decisions/77-cycle-checks-mechanics-labels-dropped.md
T
av 3c89d7111d ревью: цикл задачи проверяет механику, метки сняты
Состав прогона постоянный: гейт, спеки, код, триаж; приёмник тем идёт,
когда у проекта есть свои темы. Метка, разметка и проход review-scope
упразднены, review-levels.md удалён, ось «метка» снята из axes.md.

Ступень 4 ушла из цикла: review-proof упразднён через день после
заведения, review-architecture переехал в code-deep-review вслед за
adversary и ops. Темы security, operations и architecture закрывает
review-code сверкой с записанными инвариантами, потолком 1 находка.

Умолчание разметки действий перевёрнуто на инлайн; развилка осталась
за необратимым, изменением дельта-спек и нарушенным инвариантом.
Задачи из урожая заводятся по слову человека, а не шагом сценария.

Чекпоинт назван единственным местом, где решается форма решения.
Потеряны ось времени в цикле и суждение о форме после кода — обе
потери названы в «Честном пределе» строкой границ покрытия.

Журнал — тема 77.
2026-08-23 17:26:07 +03:00

10 KiB
Raw Blame History

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. Общий словарь канона с конвейером сузился до категорий и тем. Имена меток из него ушли — вместе с самими метками.