порядок проходов ревью — граф, а не номера стадий

Номер стадии не означал зависимости: между стадиями 1–4 ни один проход
не читает вывод другого, и очередь между ними была платой ни за что.
А правило про замеры держалось на двух именах и рассыпалось бы в день,
когда мерить начнёт третий проход.

Рёбер три вида, и они разной природы: зависимость (гейт → опиниативные,
все проходы → триаж), конфликт за ресурс (ненаправленный) и барьер
стоимости. Стадии остаются единицей состава, порядок задаёт граф:
уходит всё, у чего входящие рёбра закрыты.

Сериализует ресурс, а не имена: пометка «держит машину» — gate,
adversary, ops, triage; остальные читают и рассуждают. Проект вправе
пометить свой проход, снять пометку с перечисленных — нет.

Ранний выход заменён барьером стоимости и стоит там, где выход
зарабатывал: перед reimpl и architecture, то есть только в deep.

Отдельным абзацем — что ребро значит порядок и никогда не данные:
графовый словарь провоцирует обратное прочтение, а проход, увидевший
чужие находки, соглашается с ними. Исключение одно и оно же сток.

Диаграммы — mermaid, прогнаны через mermaid-cli. Режим прогона теперь
«по графу» / «линейно»; task-batch и task-pipeline подтянуты под общий
словарь, adversary и ops знают о пометке из своих charter'ов.

DECISIONS 15.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
av
2026-08-03 20:22:35 +03:00
co-authored by Claude Opus 5
parent d5cffb2e08
commit 57714c3549
6 changed files with 296 additions and 93 deletions
@@ -229,13 +229,15 @@ description: Автономно проводит одну задачу чере
последней. Помни ровно одно — **профиль выбирается по факту изменения, а не по
ощущению важности**, и посмотри таблицу перед вызовом.
**Режим по умолчанию параллельный, и обосновывать его не надо.** По очереди гоняем
только по особой причине, и она называется строкой: об этом попросил оператор;
машина занята чем-то ещё (в том числе соседней задачей батча); идёт разбор самого
конвейера. Меряющую пару `adversary` и `ops` конвейер держит по очереди сам, без
твоего участия: оба доказывают находки числами, а два меряющих прохода на одной
машине портят числа друг другу — находка с испорченным оракулом хуже
отсутствующей, потому что выглядит доказанной.
**Режим по умолчанию — `по графу`, и обосновывать его не надо.** Конвейер сам
знает свои рёбра: гейт открывает опиниативные проходы, проходы с пометкой «держит
машину» идут цепочкой (иначе замеры портят друг друга и находка выглядит
доказанной), дорогие generative-проходы ждут барьера стоимости, триаж — сток.
Твоего участия это не требует.
Просить **`линейно`** нужно только по причине, и она называется строкой: так
сказал оператор; машина занята чем-то ещё (в том числе соседней задачей батча);
идёт разбор самого конвейера.
Скилл сам гоняет гейт, нужные проходы и обязательный триаж. Возвращает отчёт с
потолком 7 пунктов, разметкой `Действие: инлайн | развилка` и секцией границ