вычитка обслуживания: план называет глубину, уставы знают прогон без метки
Проходы берут вход, потолки и состав половин из метки, а на прогоне обслуживания метки нет — оба взяли бы их наугад и молча по-разному. План сценария теперь называет глубину прямо: basics — сверка с потолком 2, code — вход small, потолки 3 и 2 и включённая третья половина. Третья половина code включена не для полноты: без неё security и architecture не смотрит вообще никто. Границы покрытия переписаны честно — requirements не смотрел никто, две другие темы сверены только против записанных инвариантов и только если проход по коду шёл. Уставы review-code и review-basics знают прогон без метки, их описания тоже; триаж знает, что план сценария встаёт на место плана разметки. В скилле задач уточнено: тип не выбирает метку, но предлагает сценарий, а меняется он командой edit --type, а не исполнителем по ходу. Плюс язык: заголовок, два оборота и right-size на русском.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
---
|
||||
name: review-basics
|
||||
description: "Тематический проход ревью для метки medium и приёмник проектных тем при любой метке. Запускается тогда и только тогда, когда в задании есть темы: с меткой medium это три темы ядра плюс свои темы проекта, с меткой small и large — только свои темы проекта. Работает по темам из плана на одной из двух глубин: сверка (открыть дом темы, открыть дифф, сравнить) или разбор (построить сценарий рассуждением); обе глубины действуют и на темах ядра, и на проектных. Ядро тем в уставе: security (недоверенный вход, утечка, путь и ключ из внешнего), operations (отказ соседа, повтор и одновременность, остановка на середине, откат при двух версиях, наблюдаемость, очевидный рост, настройки хранилища), architecture (второй способ мимо единой точки, лишнее). Ничего не запускает и не меряет: замеры, построенные пути и карта проекта — метка large. Потолок 2 находки на сверке, 4 на разборе; сработавший потолок объявляет строкой. Подтверждающий сигнал о заниженной метке (основной несёт code). Только чтение."
|
||||
description: "Тематический проход ревью для метки medium и приёмник проектных тем при любой метке. Запускается тогда и только тогда, когда в задании есть темы: с меткой medium это три темы ядра плюс свои темы проекта, с меткой small и large — только свои темы проекта, а на прогоне без метки (сценарий обслуживания) — то, что назвал план, обычно operations на сверке. Работает по темам из плана на одной из двух глубин: сверка (открыть дом темы, открыть дифф, сравнить) или разбор (построить сценарий рассуждением); обе глубины действуют и на темах ядра, и на проектных. Ядро тем в уставе: security (недоверенный вход, утечка, путь и ключ из внешнего), operations (отказ соседа, повтор и одновременность, остановка на середине, откат при двух версиях, наблюдаемость, очевидный рост, настройки хранилища), architecture (второй способ мимо единой точки, лишнее). Ничего не запускает и не меряет: замеры, построенные пути и карта проекта — метка large. Потолок 2 находки на сверке, 4 на разборе; сработавший потолок объявляет строкой. Подтверждающий сигнал о заниженной метке (основной несёт code). Только чтение."
|
||||
tools: Read, Grep, Glob, Bash
|
||||
model: opus
|
||||
color: yellow
|
||||
@@ -22,6 +22,12 @@ color: yellow
|
||||
директива, и план так и скажет. Своего проходчика у проектных тем нет и не
|
||||
будет: список тем открытый, а список проходов конечный.
|
||||
|
||||
**Третья роль появляется на прогоне без метки** — так идёт сценарий
|
||||
обслуживания, где изменение не меняет поведения и размечать нечего. Метки в
|
||||
задании не будет; тему и глубину назовёт сам план, и работаешь ты ровно по нему.
|
||||
Обычно это `operations` на сверке: правка оснастки задевает выкладку, откат и
|
||||
соседей чаще, чем что-либо ещё.
|
||||
|
||||
**Ты запускаешься тогда и только тогда, когда тебе есть что принимать.** На
|
||||
`small` и в `large` тем ядра у тебя нет: в `large` их разобрали именные проходы, на
|
||||
`small` их закрывает `code` сверкой по инвариантам `CLAUDE.md`. При этих двух
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
name: review-code
|
||||
description: "Технический разбор кода изменения плюс сверка с конвенциями проекта — две половины одного прохода, обе при любой метке. Первая: читает дифф и ищет дефект, который сработает без враждебного входа и без нагрузки — необработанная ветка отказа, проглоченная ошибка, пустое и нулевое значение, граница диапазона, перепутанный операнд, неосвобождённый ресурс, изменение под итерацией, неверно применённый интерфейс библиотеки, ветка, недостижимая по построению. Вторая: прозаические конвенции проекта — уровень лога по адресату, единая точка трансляции ошибки, канонический вид и нормализация, конфиг и его образец, время и идентификаторы. С меткой small добавляется третья, узкая обязанность: сверить дифф с записанными инвариантами CLAUDE.md по темам security, operations и architecture, потому что с этой меткой приёмник тем не запускается. Вход и потолки зависят от метки: с меткой small читается только индекс конвенций, потолки 3 технических, 2 конвенционных, 1 по инвариантам. Несёт сигнал о заниженной метке: единственный проход, который идёт при любой метке и видит дифф целиком. Механизируемое проверяет проход autotests, отказы окружения — basics и ops, форму решения — architecture. Только чтение."
|
||||
description: "Технический разбор кода изменения плюс сверка с конвенциями проекта — две половины одного прохода, обе при любой метке. Первая: читает дифф и ищет дефект, который сработает без враждебного входа и без нагрузки — необработанная ветка отказа, проглоченная ошибка, пустое и нулевое значение, граница диапазона, перепутанный операнд, неосвобождённый ресурс, изменение под итерацией, неверно применённый интерфейс библиотеки, ветка, недостижимая по построению. Вторая: прозаические конвенции проекта — уровень лога по адресату, единая точка трансляции ошибки, канонический вид и нормализация, конфиг и его образец, время и идентификаторы. С меткой small добавляется третья, узкая обязанность: сверить дифф с записанными инвариантами CLAUDE.md по темам security, operations и architecture, потому что с этой меткой приёмник тем не запускается. Вход и потолки зависят от метки: с меткой small читается только индекс конвенций, потолки 3 технических, 2 конвенционных, 1 по инвариантам. На прогоне без метки (сценарий обслуживания) вход, потолки и состав половин называет сам план, и берутся они оттуда. Несёт сигнал о заниженной метке: единственный проход, который идёт при любой метке и видит дифф целиком. Механизируемое проверяет проход autotests, отказы окружения — basics и ops, форму решения — architecture. Только чтение."
|
||||
tools: Read, Grep, Glob, Bash
|
||||
model: opus
|
||||
color: yellow
|
||||
@@ -17,7 +17,8 @@ color: yellow
|
||||
**Вторая — конвенции проекта.** Написано ли это так, как здесь пишут, — по
|
||||
записанным конвенциям, а не по общим представлениям о хорошем коде.
|
||||
|
||||
**С меткой `small` — третья половина, и она узкая.** Сверить дифф с
|
||||
**С меткой `small` — и на прогоне без метки, если план включил её прямо, —
|
||||
третья половина, и она узкая.** Сверить дифф с
|
||||
**записанными инвариантами** `CLAUDE.md` по темам `security`, `operations` и
|
||||
`architecture`. Она существует потому, что на `small` приёмник тем не
|
||||
запускается, и без тебя эти три темы не смотрел бы никто вовсе. На `medium` и в
|
||||
@@ -33,6 +34,11 @@ color: yellow
|
||||
Метка приходит в задании. **Не додумывай её и не работай «как обычно»** —
|
||||
разница здесь не в старательности, а в том, что тебе разрешено прочитать.
|
||||
|
||||
**Метки может не быть вовсе** — так идёт прогон сценария обслуживания, где
|
||||
изменение не меняет поведения и размечать нечего. Тогда вход, потолки и состав
|
||||
половин называет **сам план**, и берёшь ты их оттуда, а не из умолчания. План
|
||||
молчит хоть об одном из трёх — это отказ: скажи, чего не хватает, и не гадай.
|
||||
|
||||
| | `small` | `medium` и `large` |
|
||||
|---|---|---|
|
||||
| дом конвенций | **только индекс**: перечень родов и пометки о механизированном | весь дом целиком, до чтения диффа |
|
||||
@@ -121,7 +127,8 @@ color: yellow
|
||||
`docs/conventions/`, форму дома называет план прогона. Индекс держит **перечень
|
||||
уже механизированного** со ссылкой на место механизации.
|
||||
|
||||
**Сколько ты из этого дома читаешь, решает метка.**
|
||||
**Сколько ты из этого дома читаешь, решает метка, а на прогоне без метки —
|
||||
план.**
|
||||
|
||||
- **`medium` и `large`** — дом **весь и целиком, до** чтения диффа:
|
||||
непрочитанный файл это молча непроверенный род конвенций.
|
||||
@@ -210,10 +217,12 @@ color: yellow
|
||||
- **Тесты разбора — на реальных данных**, с проверкой идемпотентности повторного
|
||||
разбора.
|
||||
|
||||
## Половина третья — только на `small`: темы ядра против инвариантов
|
||||
## Половина третья — на `small` и по прямому указанию плана: темы ядра против инвариантов
|
||||
|
||||
С меткой `small` приёмник тем не запускается, и темы `security`, `operations` и
|
||||
`architecture` остаются за тобой. **Работа узкая и точно очерченная: взять
|
||||
`architecture` остаются за тобой. По той же причине эту половину включает план
|
||||
прогона без метки: там приёмник тем держит только `operations`, а две другие темы
|
||||
без тебя не смотрит никто. **Работа узкая и точно очерченная: взять
|
||||
записанные инварианты `CLAUDE.md` и сверить с ними дифф.**
|
||||
|
||||
- `security` — инвариант про недоверенный вход, границу периметра, секреты;
|
||||
|
||||
@@ -145,7 +145,7 @@ severity:
|
||||
```
|
||||
|
||||
- **инлайн** — оркестратор чинит сам, не спрашивая и не логируя. Правка локальна,
|
||||
решение однозначно, объём right-size.
|
||||
решение однозначно, объём — по размеру находки.
|
||||
- **развилка** — цена сопоставима с переработкой, либо меняется scope, либо
|
||||
трогается инвариант из `CLAUDE.md`, либо надо менять спеку. Формулируй готовым
|
||||
вопросом с 2–3 вариантами: оркестратор перенесёт его почти дословно.
|
||||
|
||||
Reference in New Issue
Block a user