Метафора требовала расшифровки при каждом употреблении, и в текстах она и расшифровывалась: «звено упорядоченной линии продукта», «тематический куст — цель, в последовательность не встающая». Если название приходится объяснять рядом с каждым употреблением, объясняет не название. Новые имена называют ровно то свойство, которым секции различаются: в первой очередь значима и обоснована прозой, во второй порядка нет вовсе. Заголовки строчные, как ядро/инфра в беклоге: имя секции одновременно значение для --section, и проза приведена к тому же виду, чтобы «--section Порядок» не выглядело правильным написанием. Версия канона не меняется: canon.md называет файл PLAN.md и о его секциях не говорит — их дом заголовки ## индекса, умолчание живёт в tasks.py. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
3.8 KiB
3.8 KiB
Журнал версий канона
Одна запись на версию. Проект знает свою версию из docs/.pm.json; canon upgrade идёт по записям снизу вверх от версии проекта до текущей и делает то,
что в них названо.
Правило записи: что добавилось, что переехало, что удалено, что сделать
проекту. Без последнего пункта запись бесполезна — по ней и работает
upgrade.
Версия — целое число. Обратной совместимости у канона нет: есть «приведён» и «не приведён».
Версия 1 — 2026-08-03
Первая версия. Проект любой прежней раскладки приводится к ней скиллом canon
в режиме adopt, а не upgrade.
Что вводится: раскладка целиком — см. canon.md.
Что сделать проекту, который приходит из свободной раскладки:
docs/.pm.jsonс{"canon": 1}и путём миграций, если БД есть.- Скелет канона целиком; незаполненное — одной честной строкой.
docs/specs/разобрать: поведение — вopenspec/specs/, обзор — вdocs/architecture.md, знание о чужих системах — вdocs/research/. Дубли capability удалить, сверив поимённо.docs/plan.md→docs/tasks/PLAN.md, шаги плана — целями в «порядок».BRIEF.md→docs/passport.md.docs/backlog/→docs/tasks/.docs/review-journal.mdилиdocs/review/journal.md→docs/review.md, плюс раздел настройки конвейера.docs/drafts/растворить: идея → задача[idea], намеренный отказ → ADR, порядок работ →PLAN.md.docs/review-brief.md, если заводился, удалить: его разделы разошлись по документам канона.conventions.md→conventions/,local-research.md→research/.- Завести
docs/security.mdс периметром первой строкой иdocs/adr/. - В
CLAUDE.md: severity рядом с каждым инвариантом; семантика гейта (чем краснеет безусловно, где логи, чего в нём нет и кто тогда гоняет дорогое); имя основной ветки; запреты с путями; гдеtestdataи куда писать временное; что считается необратимым; общий станок; ориентир по размеру спринта. Убрать раздел «Процесс», если он пересказывает пайплайн. - В
openspec/config.yamlоставить только нужды генерации и ссылки. - Добавить шаг
docs.py checkв гейт проекта.
Копии правил в шаблонах, которые версия 1 уносит в проект — их правка в каноне обязана появляться здесь отдельной версией:
| Что копируется | Дом определения |
|---|---|
форма записи журнала дефектов в docs/review.md |
av-dev-pipeline/skills/review-pipeline/references/review-journal.md |
правило заведения ADR в docs/adr/README.md |
canon.md, раздел adr/ |