задачи: починена смена стадии, разобраны находки ревью плагина

Команда stage была дефектна по шести пунктам, и все шесть подтверждены
прогоном: не звала raw_last (переход оставлял каталог красным), не
переписывала шапку беклога (индекс продолжал объявлять прежнюю стадию),
шла в обход write_config, молча пропускала файлы с непересобираемой метой,
ломалась на беклоге без заголовков и схлопывала полки при первом
объявлении стадии.

Объявление и смена разведены: объявление беклога не трогает вовсе, смена
трогает состав секций только по явному --sections, а слить полки скрипт
не берётся ни в одном случае. Абзац шапки размечен парой «стадия», и
расхождение с конфигом стало обычным дрейфом.

Отказ по недостающей строке индекса запирал запись, пережившую упразднение
роадмапа: edit, close и reopen теперь заводят или пропускают строку сами.
Прочее: регистр stage нормализуется при чтении; --fix снимает мёртвые теги
и у неразобранных записей; move отказывает переставлять сырьё; adopt
держит место сырья; docs.py bump двигает одну запись журнала за раз;
tasks.py получил перечень упразднённых адресов, и гейт наконец видит
собственное упразднение ROADMAP.md.

Запись «Версия 3» переписана по прогону на игрушечном проекте: прежний
порядок шагов был неисполним. Закрыты дыры модели стадий (пересмотр плана
стройки стал сценарием, приёмка отвязана от груминга, from-review,
research и adopt получили развилку по стадии, перечень осей пересчитан) и
находки, старшие этой сессии: review-triage получил режим без метки, три
списка проектных копий сведены к дому с проверяемыми копиями, пять
пересказов правил стали помеченными копиями или ссылками, language.md
перестал объявлять юрисдикцию над чужим плагином.
This commit is contained in:
av
2026-08-13 15:08:29 +03:00
parent 8d8c1656e5
commit ed83ec7dc0
28 changed files with 678 additions and 259 deletions
+20 -12
View File
@@ -41,12 +41,20 @@ description: "Взять одну задачу и довести её до за
делает скилл `av-dev:code-openspec`. **Сценариям разведки и обслуживания
OpenSpec не нужен** — они не заводят change; `opsx:explore` берётся разведкой,
если плагин есть.
- **Проектные копии этих скиллов и агентов удаляются при установке плагина**
(`.claude/skills/` — голые имена `resolve`, `review`, а у проектов прошлого
поколения ещё `task-pipeline`, `review-pipeline`, `task-batch`, и с префиксом
проекта: `<проект>-task-pipeline`, `<проект>-review-pipeline`;
`.claude/agents/<проект>-review-*.md`). Две копии одного скилла расходятся, и
побеждает та, что короче названа.
- **Проектные копии этих скиллов и агентов удаляются при установке плагина.**
<!-- копия: проектные-копии из README.md -->
Голые имена в `.claude/skills/`: `resolve`, `review`, а у проектов прошлого
поколения ещё `task-pipeline`, `review-pipeline`, `task-batch`. С префиксом
проекта: `<проект>-task-pipeline`, `<проект>-review-pipeline`. Агенты:
`.claude/agents/<проект>-review-*.md`.
Две копии одного скилла расходятся, и побеждает та, что **короче названа**:
короткое имя разрешится в устаревшую проектную копию молча и без признаков
подмены.
<!-- /копия: проектные-копии -->
### Чего может не быть
@@ -108,8 +116,7 @@ description: "Взять одну задачу и довести её до за
**Запись из каталога сперва проверяется на готовность, и проверяет её машина.**
Вызови Skill `av-dev:task-track` и попроси прогнать `ready <слаг>`: он смотрит
тип, цель у `feature`, пустой ли раздел вопросов и собраны ли разделы схемы
типа. Судить это глазами нельзя — ровно тот случай, где машина дешевле и точнее,
тип, пустой ли раздел вопросов и собраны ли разделы схемы типа. Судить это глазами нельзя — ровно тот случай, где машина дешевле и точнее,
а цена ошибки отложенная: недостающие критерии приёмки обнаружатся на приёмке,
когда сверять уже не с чем.
@@ -301,13 +308,14 @@ flowchart TD
## Границы: чем этот скилл не владеет
- **Беклогом, целями и приоритетами.** Задача приходит извне. Скилл её не
выбирает, не приоритизирует, не заводит и не переоценивает.
- **Беклогом и порядком работ.** Задача приходит извне. Скилл её не выбирает,
не переставляет, не заводит и не переоценивает.
- **Форматом задач и документов.** Индексы и документы канона руками не правятся,
путь к чужому скрипту не выдумывается: этим владеют `av-dev:task-track` и
`av-dev:doc-sync`. Закрытие — работа этого скилла, и это осознанное решение с
названной ценой: **приёмщик и исполнитель совпали**. Закрытие поэтому **не окончательно** — человек на
груминге (`av-dev:task-groom`) возвращает задачу `reopen` с причиной, а доклад
названной ценой: **приёмщик и исполнитель совпали**. Закрытие поэтому **не окончательно** — человек
возвращает задачу `reopen` с причиной а доработке это делают грумингом,
`av-dev:task-groom`, на стройке — сразу, как заметили), а доклад
по критериям приёмки становится единственным, по чему приёмка вообще возможна.
- **Определением ценности.** «Нужна ли эта функциональность» — не вопрос этого
скилла ни на одном шаге и ни в одном сценарии. Чекпоинт решения спрашивает «так