- Р235: префикс называет материал, а `canon` занят формой, общей у всех частей проекта; версия стала общей ещё на слиянии, и с того дня `doc-` спорил с механикой; - Р236: переименование поехало записью журнала версий, хотя в проекте ничего не переехало — сломались бы путь в гейте и имя вызова; - С226 и С227: префикс — проверяемое утверждение о владении материалом; переименование скилла есть изменение раскладки, если проект держит его адрес у себя.
42 lines
3.8 KiB
Markdown
42 lines
3.8 KiB
Markdown
# 66. `doc-canon` → `canon`: скилл формы вышел из семейства документов (2026-08-13)
|
||
|
||
Префиксы `doc-`, `task-`, `code-` пришли со слиянием плагинов ([тема
|
||
64](64-three-plugins-merged.md)) и называют **материал**, которым скилл занят, —
|
||
тем же признаком, каким прежде звались плагины ([тема
|
||
56](56-plugin-and-skill-renames.md)). Для восьми скиллов признак верен. Для
|
||
девятого он врал.
|
||
|
||
**Р235. Скилл занят не материалом, а формой, и формы у проекта одна на все
|
||
части.** `check` сверяет раскладку документов, `adopt` заводит все части сразу и
|
||
зовёт владельцев каталога задач и `openspec/`, `upgrade` повышает **всю**
|
||
раскладку одним журналом версий — и документы, и каталог задач. Версия стала
|
||
общей ещё на слиянии ([Р231](64-three-plugins-merged.md)), и с этого дня префикс
|
||
`doc-` спорил с механикой, которую сам же скилл и исполняет. Имя осталось без
|
||
префикса: отсутствие префикса здесь — тоже утверждение, и читается оно как «этот
|
||
поперёк остальных».
|
||
|
||
**Р236. Переименование поехало записью журнала версий, хотя в проекте ничего не
|
||
переехало.** Ни один файл проекта не сменил дом — сменились путь к скрипту
|
||
(`skills/doc-canon/scripts/docs.py`) и имя вызова (`av-dev:doc-canon`), а оба
|
||
живут **в проекте**: первый строкой гейта, второй в `CLAUDE.md`, в `Taskfile` и в
|
||
записях задач. Механизма догнать их у плагина нет, и без записи проект узнал бы о
|
||
переименовании покрасневшим гейтом или неразрешившимся вызовом.
|
||
|
||
Запись 1 при этом не переписана: проект, ещё не прошедший её, переименует каталог
|
||
дважды подряд — в `doc-canon` и обратно в `canon`. Так работает журнал
|
||
([С189](56-plugin-and-skill-renames.md)): каждая запись исполняется на состоянии,
|
||
которое оставила предыдущая.
|
||
|
||
## Что из этого следует
|
||
|
||
**С226. Префикс имени — утверждение о владении материалом, и оно проверяемо.**
|
||
Скилл, работающий поперёк материалов, обязан остаться без префикса: имя,
|
||
приписавшее его к одному семейству, читается как обещание, что соседние семейства
|
||
его не касаются, — а его вызывают ровно затем, чтобы касались все.
|
||
|
||
**С227. Переименование скилла — изменение раскладки проекта, если проект держит
|
||
его путь или имя у себя.** Разрез идёт не по тому, тронуты ли файлы проекта, а по
|
||
тому, есть ли в проекте адрес, который сломается. Гейт и `CLAUDE.md` такие адреса
|
||
держат, поэтому переименование получает запись журнала версий наравне с переездом
|
||
файлов.
|