ревью зависимостей: одна настоящая протечка, неисполнимая деградация, две разошедшиеся копии
Целевая картина проверена по коду и текстам. av-dev-git ни от чего не зависит. av-dev-pipeline проходим на задаче, заданной одной строкой текста, — кроме одного места. Третья цель в исходной формулировке недостижима, и поправлена формулировка, а не картина. av-dev-pm владеет docs/review.md — конфигурационным файлом конвейера с «Вопросами к проходам» и «Триггерами профиля», то есть знает проходы поимённо по построению. Кто-то этим словарём владеть обязан. Честная формулировка: pm не зовёт пайплайн и не требует его наличия — и она выполняется. Настоящая протечка была одна: опоры приёмки в «Стимулах» и sprint.md держались на отчёте триажа по конкретному OpenSpec-пути. В проекте без конвейера защита от занижения урожая исчезала молча. Теперь опора названа абстрактно, путь дан частным случаем, отсутствие конвейера обязано попадать строкой в доклад спринта. Ветка деградации шага 9 была неисполнима ровно в том случае, ради которого написана: «плагина нет — открой av-dev-pm/skills/canon/references/canon.md», путь в дерево маркетплейса. Пайплайн теперь ходит в свой project-facts.md, а ссылки в чужой плагин даются через Skill. Две симметричные копии уже разошлись: форма журнала дефектов (шесть полей против пяти, «Причина» потеряна) и читатели docs/research/ («specs» выпал). Дома назначены, копии помечены, обязанность тянуть запись в журнал версий записана. Плюс: пайплайн не называет items/ и SPRINT.md — их имена проект вправе сменить; манифесты объявили av-dev-pm опциональным и приём задачи текстом. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -54,11 +54,16 @@
|
||||
список и **не сливает в одну строку**: разные пробелы чинятся разным — периметр
|
||||
пишется руками за десять минут, а числа требуют замера.
|
||||
|
||||
**Кто какой документ читает — не здесь.** Полный список читателей ведёт канон
|
||||
(`Skill av-dev-pm:canon`, его `references/canon.md`, таблица «Кто читает»); ниже —
|
||||
только **последствие** отсутствия, и оно называет самое дорогое, а не всех
|
||||
пострадавших. Два списка читателей уже однажды разошлись; второго раза не надо.
|
||||
|
||||
| Нет документа | Что деградирует |
|
||||
| --- | --- |
|
||||
| `CLAUDE.md` без инвариантов | `critical` по основанию «нарушен инвариант проекта» не присваивается никем |
|
||||
| `docs/security.md` | `adversary` не знает периметра — формулирует условиями, `critical` не ставит |
|
||||
| `docs/research/` | числа неизвестны `ops`, `adversary`, `reimpl` — все трое формулируют условиями |
|
||||
| `docs/research/` | числа неизвестны `specs`, `ops`, `adversary`, `reimpl` — формулируют условиями, а `specs` теряет проверку «требование против наблюдения» |
|
||||
| `docs/database.md` | замер не с чем сравнить: находка не поднимается выше гипотезы |
|
||||
| `docs/passport.md` | `architecture` теряет границу домена и вырождается в общее мнение |
|
||||
| `docs/review.md` | `triage` отсеивает вслепую: типовых ложноположительных нет |
|
||||
|
||||
Reference in New Issue
Block a user