docs: раскладка переехала в .av-dev.toml, а расхождения документов сведены
- Перевод на канон 1 доделан: адреса служебного файла и имена скиллов переставлены в девяти местах прозы и кода, гейт зовёт три скрипта по новым путям, прежние docs/.docs.json и tasks/.tasks.json удалены. - Сверка двумя агентами нашла четырнадцать расхождений, тринадцать сведены строками: число прогонов ревью и преамбула журнала дефектов, счёт capability, маршруты README, дубли инварианта захвата и кодов прогона, протухшие указатели записок разведки, маркер долга на переехавшем абзаце. Срок жизни сессии нормирует спека access, database.md на неё ссылается. - Purpose спеки pipeline объявляет неописанным то, что в ней же и стоит; правка идёт изменением openspec, поэтому заведена задача pipeline-spec-purpose-drift.
This commit is contained in:
+13
-12
@@ -15,9 +15,9 @@ vars:
|
||||
# отправлял читателя искать разъехавшееся там, где просто неполно дерево. Сам
|
||||
# `task` отдаёт наружу свой 201 на любой отказ шага, поэтому словарь читается
|
||||
# по коду скрипта, а не по коду `task`.
|
||||
DOCS_PY: '{{.DOCS_PY | default "~/.claude/plugins/marketplaces/av-dev-skills/av-dev-docs/skills/canon/scripts/docs.py"}}'
|
||||
TASKS_PY: '{{.TASKS_PY | default "~/.claude/plugins/marketplaces/av-dev-skills/av-dev-tasks/skills/tasks/scripts/tasks.py"}}'
|
||||
OPENSPEC_PY: '{{.OPENSPEC_PY | default "~/.claude/plugins/marketplaces/av-dev-skills/av-dev-code/skills/openspec/scripts/openspec.py"}}'
|
||||
DOCS_PY: '{{.DOCS_PY | default "~/.claude/plugins/marketplaces/av-dev-skills/av-dev/skills/doc-canon/scripts/docs.py"}}'
|
||||
TASKS_PY: '{{.TASKS_PY | default "~/.claude/plugins/marketplaces/av-dev-skills/av-dev/skills/task-track/scripts/tasks.py"}}'
|
||||
OPENSPEC_PY: '{{.OPENSPEC_PY | default "~/.claude/plugins/marketplaces/av-dev-skills/av-dev/skills/code-openspec/scripts/openspec.py"}}'
|
||||
|
||||
tasks:
|
||||
|
||||
@@ -89,19 +89,20 @@ tasks:
|
||||
echo "задай свою: task migrations BASE=<rev>"
|
||||
exit 3
|
||||
fi
|
||||
# Каталог шагов берётся из docs/.docs.json — там он уже записан ключом
|
||||
# `migrations` для сверки документов. Свой литерал завёл бы факту второй
|
||||
# дом: каталог переехал бы, а один из двух стражей молча позеленел.
|
||||
dir=$(python3 -c 'import json,sys; print(json.load(open("docs/.docs.json"))["migrations"])' 2>/dev/null) || dir=""
|
||||
# Каталог шагов берётся из .av-dev.toml — там он уже записан ключом
|
||||
# `migrations` секции `[docs]` для сверки документов. Свой литерал завёл
|
||||
# бы факту второй дом: каталог переехал бы, а один из двух стражей молча
|
||||
# позеленел. До слияния плагинов файл звался docs/.docs.json.
|
||||
dir=$(python3 -c 'import tomllib; print(tomllib.load(open(".av-dev.toml","rb"))["docs"]["migrations"])' 2>/dev/null) || dir=""
|
||||
if [ -z "$dir" ] || [ ! -d "$dir" ]; then
|
||||
echo "каталог шагов схемы не найден: ключ migrations в docs/.docs.json → '$dir'"
|
||||
echo "каталог шагов схемы не найден: ключ [docs] migrations в .av-dev.toml → '$dir'"
|
||||
exit 3
|
||||
fi
|
||||
# Страж предмета: правило, потерявшее файлы, стало бы вечно зелёным от
|
||||
# одного переименования — тот же приём, что у правил `internal/archrules`.
|
||||
if [ -z "$(ls "$dir" | grep -E '^[0-9]{12}_.*\.go$')" ]; then
|
||||
echo "в $dir нет ни одного файла шага: правило потеряло предмет"
|
||||
echo "поправь шаблон имени в этом шаге либо ключ migrations в docs/.docs.json"
|
||||
echo "поправь шаблон имени в этом шаге либо ключ [docs] migrations в .av-dev.toml"
|
||||
exit 3
|
||||
fi
|
||||
# Баз две, и вторая обязательна. `{{.BASE}}` отвечает на «шаг уже уехал»
|
||||
@@ -175,7 +176,7 @@ tasks:
|
||||
py=$(eval echo {{.DOCS_PY}})
|
||||
if [ ! -f "$py" ]; then
|
||||
echo "docs.py не найден: $py"
|
||||
echo "поставь плагин av-dev-docs либо задай путь: task docs DOCS_PY=<путь>"
|
||||
echo "поставь плагин av-dev либо задай путь: task docs DOCS_PY=<путь>"
|
||||
exit 3
|
||||
fi
|
||||
python3 "$py" check --base {{.BASE}}
|
||||
@@ -187,7 +188,7 @@ tasks:
|
||||
py=$(eval echo {{.TASKS_PY}})
|
||||
if [ ! -f "$py" ]; then
|
||||
echo "tasks.py не найден: $py"
|
||||
echo "поставь плагин av-dev-tasks либо задай путь: task tasks TASKS_PY=<путь>"
|
||||
echo "поставь плагин av-dev либо задай путь: task tasks TASKS_PY=<путь>"
|
||||
exit 3
|
||||
fi
|
||||
python3 "$py" check --dir tasks
|
||||
@@ -199,7 +200,7 @@ tasks:
|
||||
py=$(eval echo {{.OPENSPEC_PY}})
|
||||
if [ ! -f "$py" ]; then
|
||||
echo "openspec.py не найден: $py"
|
||||
echo "поставь плагин av-dev-code либо задай путь: task openspec OPENSPEC_PY=<путь>"
|
||||
echo "поставь плагин av-dev либо задай путь: task openspec OPENSPEC_PY=<путь>"
|
||||
exit 3
|
||||
fi
|
||||
python3 "$py" check --dir .
|
||||
|
||||
Reference in New Issue
Block a user