слияние: три плагина стали одним av-dev, скиллы получили префиксы

Каталоги, агенты и общие дома переехали в av-dev/; скиллы названы по прежнему
плагину — doc-*, task-*, code-*, с двумя смысловыми именами вместо тавтологии:
doc-sync вместо docs, task-track вместо tasks. Манифесты сведены к двум
плагинам. Пространства имён вызовов и пути внутри дерева переписаны машинно;
проза, которая называет прежние плагины отдельными, идёт следующим шагом.
This commit is contained in:
av
2026-08-13 10:10:51 +03:00
parent 142659bfd1
commit de12a4d8a3
68 changed files with 222 additions and 248 deletions
+11 -11
View File
@@ -128,10 +128,10 @@ flowchart TB
```
Зависимости **взаимные, но каждая мягкая**. `av-dev-code` зовёт обоих соседей;
обратные вызовы тоже есть — `av-dev-docs:init` и `av-dev-docs:canon` заводят
OpenSpec скиллом `av-dev-code:openspec`, `av-dev-docs:docs` берёт у
`av-dev-code:review` форму записи журнала дефектов и процедуру промоута,
`av-dev-docs:canon` и `av-dev-docs:healthcheck` зовут `av-dev-tasks:tasks`.
обратные вызовы тоже есть — `av-dev:doc-init` и `av-dev:doc-canon` заводят
OpenSpec скиллом `av-dev:code-openspec`, `av-dev:doc-sync` берёт у
`av-dev:code-review` форму записи журнала дефектов и процедуру промоута,
`av-dev:doc-canon` и `av-dev:doc-healthcheck` зовут `av-dev:task-track`.
**Мягкая** значит, что у любого вызова есть ветка «не разрешился»: соседа в
проекте нет — вызывающий называет строкой, чего теперь не делает никто, и работу
не останавливает. Как именно зовут соседа и что делают, когда вызов не
@@ -147,7 +147,7 @@ OpenSpec скиллом `av-dev-code:openspec`, `av-dev-docs:docs` берёт у
`docs/` (паспорт, архитектура, база, безопасность, конвенции, разведка, ADR,
ревью, задачи) и `openspec/` — **раскладка целиком, роли документов и правило
единственного дома живут одним домом**:
[canon.md](av-dev-docs/skills/canon/references/canon.md). Здесь она не
[canon.md](av-dev/skills/doc-canon/references/canon.md). Здесь она не
пересказывается: копия перечня путей уже расходилась с домом, и как раз в
обязательных — в ней не хватало путей, чьё отсутствие `docs.py check` считает
нарушением.
@@ -163,17 +163,17 @@ OpenSpec скиллом `av-dev-code:openspec`, `av-dev-docs:docs` берёт у
Отдельного файла-брифа при этом нет — проходы читают документы напрямую; карта
«тема → её дом → что оттуда берётся» —
[project-facts.md](av-dev-code/skills/review/references/project-facts.md).
[project-facts.md](av-dev/skills/code-review/references/project-facts.md).
Прийти в старый проект и перевести его на канон — `/av-dev-docs:canon`. Канон
Прийти в старый проект и перевести его на канон — `/av-dev:doc-canon`. Канон
версионируется, и проекты повышаются по [журналу
версий](av-dev-docs/skills/canon/references/changelog.md); версия проекта живёт в
версий](av-dev/skills/doc-canon/references/changelog.md); версия проекта живёт в
`docs/.docs.json`.
**Версий две, и они независимы.** У каталога задач своя — ключ `tasks` в
`<каталог задач>/.tasks.json`, свой [журнал
версий](av-dev-tasks/skills/tasks/references/changelog.md) и своё повышение
скиллом `/av-dev-tasks:tasks`. Плагины ставятся порознь: у проекта, взявшего учёт
версий](av-dev/skills/task-track/references/changelog.md) и своё повышение
скиллом `/av-dev:task-track`. Плагины ставятся порознь: у проекта, взявшего учёт
работ без канона документов, `docs/` нет вовсе, и общее число оказалось бы домом,
которого у половины проектов не существует. Имя служебного файла при этом
называет владельца — `.docs.json`, `.tasks.json`, `openspec/config.yaml`.
@@ -362,7 +362,7 @@ python3 scripts/frontmatter.py # 0 в порядке, 1 расхождени
а не «имя не то»;
- **цвет charter'а, не отвечающий его модели.** Цвет кодирует модель, а не роль
прохода — раскладка живёт в
[review/SKILL.md](av-dev-code/skills/review/SKILL.md),
[review/SKILL.md](av-dev/skills/code-review/SKILL.md),
разделе «Модель по проходу», здесь только её механизация. Держаться вниманием
правило не может: цвет ставится один раз при заведении charter'а, а модель
потом меняется калибровкой;