ревью: цикл задачи проверяет механику, метки сняты
Состав прогона постоянный: гейт, спеки, код, триаж; приёмник тем идёт, когда у проекта есть свои темы. Метка, разметка и проход review-scope упразднены, review-levels.md удалён, ось «метка» снята из axes.md. Ступень 4 ушла из цикла: review-proof упразднён через день после заведения, review-architecture переехал в code-deep-review вслед за adversary и ops. Темы security, operations и architecture закрывает review-code сверкой с записанными инвариантами, потолком 1 находка. Умолчание разметки действий перевёрнуто на инлайн; развилка осталась за необратимым, изменением дельта-спек и нарушенным инвариантом. Задачи из урожая заводятся по слову человека, а не шагом сценария. Чекпоинт назван единственным местом, где решается форма решения. Потеряны ось времени в цикле и суждение о форме после кода — обе потери названы в «Честном пределе» строкой границ покрытия. Журнал — тема 77.
This commit is contained in:
+39
-44
@@ -3,8 +3,14 @@
|
||||
**Это дом перечня, а не значений.** Что означает каждое значение и как оно
|
||||
работает, знает владелец оси — здесь только сама ось, её дом и **чего она не
|
||||
решает**. Второй пересказ механики разошёлся бы с первым; перечень же нужен
|
||||
целиком и в одном месте, потому что вопрос «а не задаёт ли это метку» задают из
|
||||
скилла, который метку не ведёт.
|
||||
целиком и в одном месте, потому что вопрос «а не задаёт ли это глубину ревью»
|
||||
задают из скилла, который ревью не ведёт.
|
||||
|
||||
**Одну ось перечень уже терял, и терял молча.** Метка задачи — `small`, `medium`,
|
||||
`large` — правила состав ревью кода, пока состав не стал постоянным; ось снята
|
||||
вместе с проходом, который её считал. Строка в журнале решений есть, а здесь от
|
||||
неё не осталось ничего — так и должно быть: перечень описывает то, что ветвится
|
||||
сегодня.
|
||||
|
||||
**Ось — это закрытый перечень значений, по которому что-то ветвится.** Признак
|
||||
проверяемый, и он отсекает похожее: темы ревью и документы проекта — списки
|
||||
@@ -20,9 +26,7 @@
|
||||
| тип записи | `feature` `fix` `chore` `research` | `task-track/SKILL.md`, «Тип записи» |
|
||||
| форма постановки | запись каталога · текст | `code-resolve/SKILL.md`, «Вход» |
|
||||
| сценарий | решение · обслуживание · разведка | `code-resolve/SKILL.md`, «Развилка» |
|
||||
| метка | `small` `medium` `large` | `code-review/SKILL.md`, «Метки» |
|
||||
| режим прогона | с меткой · без метки | здесь, ниже |
|
||||
| стадия ревью | дизайн · код | `code-review/SKILL.md`, «Ревью дизайна» |
|
||||
| режим прогона | по change · без change | здесь, ниже |
|
||||
| категория документа | тема · источник темы · процессный | `canon/references/canon.md` |
|
||||
| severity находки | `critical` `major` `minor` `nit` | `code-review/references/finding-contract.md` |
|
||||
| коды выхода | 0 1 2 3 4 | здесь, ниже |
|
||||
@@ -39,39 +43,31 @@
|
||||
| --- | --- | --- |
|
||||
| стадия проекта | что значит порядок строк беклога: зависимость или важность | `task-track/SKILL.md`, «Две стадии» |
|
||||
| стадия проекта | сколько у беклога секций, как его пополняют, применим ли груминг | там же и `task-groom/SKILL.md`, «Груминг — операция доработки» |
|
||||
| стадия проекта | метку и глубину — **не влияет, и это записано явно** | `task-track/SKILL.md`, «Тип записи» |
|
||||
| стадия проекта | глубину ревью — **не влияет, и это записано явно** | `task-track/SKILL.md`, «Тип записи» |
|
||||
| стадия проекта | тип записи — **не влияет, и это записано явно** | `task-track/SKILL.md`, «Две стадии» |
|
||||
| стадия проекта | как серьёзность находки ложится в список | `task-track/references/from-review.md` |
|
||||
| стадия проекта | где сценарии кладут свой исход и чем закрывают переходное состояние | `code-resolve/references/research.md`, `task-track/references/adopt.md` |
|
||||
| форма постановки | проверку готовности, кто называет тип, есть ли шаг закрытия | `code-resolve/SKILL.md`, «Постановка текстом» |
|
||||
| форма постановки | сценарий, метку и глубину — **не влияет, и это записано явно** | там же: развилка у обеих форм общая |
|
||||
| форма постановки | сценарий и глубину ревью — **не влияет, и это записано явно** | там же: развилка у обеих форм общая |
|
||||
| тип записи | сценарий — **предлагает**, подтверждает предмет работы | `task-track/SKILL.md`, «Тип записи» |
|
||||
| тип записи | метку и глубину — **не влияет, и это записано явно** | там же |
|
||||
| сценарий | режим прогона: обслуживание идёт без метки | `code-resolve/references/maintain.md` |
|
||||
| метка | состав проходов прогона | `code-review/SKILL.md`, «Метки» |
|
||||
| метка | глубину темы: против чего смотрят и как | там же |
|
||||
| тип записи | глубину ревью — **не влияет, и это записано явно** | там же |
|
||||
| сценарий | режим прогона: обслуживание идёт без change | `code-resolve/references/maintain.md` |
|
||||
| режим прогона | состав проходов и саму возможность запуска прохода | `code-review/SKILL.md`, «Прогон без change» |
|
||||
| категория документа | заводит ли документ направление проверки | `canon.md`, «Три категории» |
|
||||
| severity | что с находкой делают дальше | `code-review/SKILL.md`, «Что происходит с находками» |
|
||||
|
||||
**Пять клеток пусты, и это сказано намеренно, а не забыто.**
|
||||
**Четыре клетки пусты, и это сказано намеренно, а не забыто.**
|
||||
|
||||
**Категория документа × режим прогона.** На прогоне **с меткой** своя тема
|
||||
проекта закрыта при любом значении: `review-basics` — приёмник проектных тем и
|
||||
при `small`, и при `large`, и при `medium`. На прогоне **без метки** план
|
||||
фиксирован сценарием — `autotests`, `operations`, `conventions`, — и своих тем
|
||||
проекта в нём нет. Значит, документ, заведённый проектом как тема, на
|
||||
обслуживании не смотрит никто, и строкой это нигде не называется.
|
||||
**Категория документа × режим прогона.** На прогоне **по change** своя тема
|
||||
проекта закрыта: `review-basics` — её приёмник, и запускается он тогда и только
|
||||
тогда, когда такие темы у проекта есть. На прогоне **без change** план фиксирован
|
||||
сценарием — `autotests`, `operations`, `conventions`, — и своих тем проекта в нём
|
||||
нет. Значит, документ, заведённый проектом как тема, на обслуживании не смотрит
|
||||
никто, и строкой это нигде не называется.
|
||||
|
||||
**Стадия проекта × метка.** Изменение на стройке ничем не проще того же
|
||||
изменения на доработке: метку назначает разметка по факту изменения, и стадия в
|
||||
неё не входит. Заманчивая мысль «на стройке всё `small`, потому что приложения
|
||||
ещё нет» разбивается о первый же шаг, кладущий схему хранилища.
|
||||
|
||||
**Стадия проекта × режим прогона и × стадия ревью.** Не влияет ни на одну:
|
||||
режим выбирает сценарий, стадию ревью — наличие дизайна. Прогон обслуживания на
|
||||
стройке — обычное дело (первые шаги плана заводят гейт и сборку), и идёт он там
|
||||
так же, как на доработке.
|
||||
**Стадия проекта × режим прогона.** Не влияет: режим выбирает сценарий. Прогон
|
||||
обслуживания на стройке — обычное дело (первые шаги плана заводят гейт и сборку),
|
||||
и идёт он там так же, как на доработке.
|
||||
|
||||
**Стадия проекта × категория документа, × коды выхода и × форма постановки.** Не
|
||||
влияет: категория — свойство документа, коды — общий словарь скриптов, а форму
|
||||
@@ -79,10 +75,11 @@
|
||||
доработке. Названо потому, что перечень объявлен полным, и клетка без ответа
|
||||
читается как забытая.
|
||||
|
||||
**Режим прогона × severity.** Триаж обязателен всегда, в том числе без метки. Но
|
||||
часть оснований `critical` — построенный путь к отказу, замер — добывается
|
||||
проходами, которые без метки не запускаются. Значит ли это, что `critical` на
|
||||
прогоне обслуживания не бывает, или что его основания там другие, не сказано.
|
||||
**Режим прогона × severity.** Триаж обязателен всегда, в том числе без change. Но
|
||||
часть оснований `critical` — построенный путь к отказу, замер — добывается только
|
||||
скиллом `av-dev:code-deep-review`, а в цикле задачи не добывается ни на одном
|
||||
прогоне. Значит ли это, что `critical` там не бывает вовсе, или что его основания
|
||||
другие, не сказано.
|
||||
|
||||
## Режим прогона
|
||||
|
||||
@@ -90,21 +87,19 @@
|
||||
|
||||
**Прогон ревью идёт в одном из двух режимов, и режим — не глубина.**
|
||||
|
||||
- **С меткой** — обычный прогон по change: разметку сделал `review-scope`, состав
|
||||
прогона выведен из метки.
|
||||
- **Без метки** — размечать нечего, план фиксирован и назван вызывающим,
|
||||
разметчик не запускается вовсе. Так идут двое: сценарий обслуживания, у
|
||||
которого нет change, и скилл `av-dev:code-deep-review`, у которого нет задачи —
|
||||
он смотрит названную область кода.
|
||||
- **По change** — обычный прогон цикла задачи: есть дифф и дельта-спеки, состав
|
||||
постоянный и живёт в конвейере.
|
||||
- **Без change** — дельта-спек нет по построению, и вместе с ними нет темы
|
||||
`requirements`. План фиксирован и назван вызывающим; так идёт сценарий
|
||||
обслуживания.
|
||||
|
||||
**Без метки — не то же самое, что `small`.** `small` — это суждение о размере и
|
||||
сложности, снятое с изменения; отсутствие метки — утверждение, что снимать её
|
||||
не с чего. Проход, подставивший себе `small` там, где метки нет, вывел бы
|
||||
глубину из ничего.
|
||||
**Режим правит состав, а не глубину.** Глубина темы стоит в таблице тем
|
||||
конвейера, одна на все прогоны по change; на прогоне без change её называет план
|
||||
сценария — иначе проход, чьей темы в плане нет, взял бы глубину наугад.
|
||||
|
||||
**Режим правит не только состав, но и саму возможность запуска.** Проход, у
|
||||
которого запуск задан меткой, без метки не имеет ответа на вопрос «запускаться
|
||||
ли» — и ответ ему даёт план сценария, а не умолчание.
|
||||
**Третьего режима у конвейера нет.** Скилл `av-dev:code-deep-review` конвейер не
|
||||
зовёт вовсе: состав, глубина и вход у него свои, а общее с конвейером — уставы
|
||||
проходов и контракт находок.
|
||||
|
||||
<!-- /дом: режим-прогона -->
|
||||
|
||||
|
||||
Reference in New Issue
Block a user