# Что осталось сделать **Здесь только работы и их порядок.** Чего здесь нет намеренно: - **риски, открытые вопросы и принятые пределы** — [REMAINING.md](REMAINING.md); - **почему решено так** — [DECISIONS.md](DECISIONS.md), записи датированы; - **шаги повышения проекта с версии канона на версию** — журнал версий ([changelog.md](av-dev-docs/skills/canon/references/changelog.md)). Пересказ их сюда был бы вторым домом, и прежний план на этом уже разъезжался: он повторял записи версий 3, 4 и 5 построчно, и половина повторов протухла молча. Сделанное отсюда **удаляется, а не помечается галочкой**. След остаётся в коммитах и в `DECISIONS.md`; список из двух сотен `[x]` перестают читать целиком, и живые пункты в нём теряются — прежний план умер именно так. ## Где мы сейчас Плагинов четыре, и каждый ставится отдельно: `av-dev-docs` (канон документов и их содержимое), `av-dev-tasks` (задачи и цели), `av-dev-code` (код по задачам: цикл SDD, конвейер ревью, OpenSpec), `av-dev-git`. Общее, что нужно нескольким дословно, живёт домом в `shared/` и уезжает копиями. Канон документов — **версия 14**; формат задач — **версия 1**, своя и со своим журналом. Живые проекты стоят на 2–3 и на плагине `av-dev-pm`, которого больше нет. Бумажная часть закрыта аудитом четырёх плагинов и четырьмя пропусками правок (DECISIONS, запись 59). Всё, что ниже, проверяется **только на живом коде**. ## 1. Живые проекты — вернуть в рабочее состояние Блокирует всё остальное: под текущим каноном не стоит ни один проект, и ни один скилл, кроме `docs.py check`, не исполнялся на живом коде ни разу (см. REMAINING, «Что ещё не сделано»). ### healthlog — первым - [ ] переустановить плагины: снять `av-dev-pm` и `av-dev-pipeline`, поставить `av-dev-docs`, `av-dev-tasks`, `av-dev-code`, `av-dev-git`. Оба прежних имени мертвы, и `plugin update` их не переименует — только снять и поставить. `marketplace update`, затем `plugin update` — одного шага мало (README, «Обновление») - [ ] удалить проектные копии: `.claude/skills/healthlog-{task,review}-pipeline` и девять `.claude/agents/healthlog-review-*.md`. Они прошлого поколения и после переезда указывают на документы, которых уже не будет - [ ] `av-dev-docs:canon` в режиме `adopt` — он приведёт проект к канону 14 сразу, картой и с подтверждением. Файл-в-файл здесь не расписан: раскладку знает скилл, и второй перечень разошёлся бы с ним - [ ] каталог задач — в `tasks/` корня (канон 11), не в `docs/tasks/`, без `SPRINT.md` (канон 12) и с версией формата в `tasks/.tasks.json` (журнал задач, версия 1). Скилл задач зовётся из `adopt` сам - [ ] гейт проекта: три шага вместо одного — `docs.py check`, `tasks.py check --dir tasks`, `openspec.py check`. **Второй и третий раньше не были нужны:** согласованность задач тянул за собой `docs.py`, форму `config.yaml` он же. Теперь оба молчат, и без своих шагов дрейф перестанет ловиться - [ ] разобрать урожай `doc-consistency` и `doc-code-drift` порциями — правило единственного дома на живом проекте не проверял никто ### jellybit — после калибровки Порядок не произволен: замер (раздел 3) блокирует переезд jellybit, и только его. - [ ] то же, что у healthlog: плагины, проектные копии, `adopt`, каталог задач, гейт - [ ] проектные копии здесь опаснее: скиллы названы `task-pipeline`, `review-pipeline` — **ровно как в плагине**, и короткое имя может увести в устаревшую копию молча (REMAINING) ## 2. Учёт работ без спринтов — что осталось Сделано: спринт снят со скрипта и текстов, приоритет стал порядком строк в беклоге, гейт готовности переехал в `tasks.py ready`, `session` стал скиллом `groom`, запись 12 в журнал версий канона написана. - [ ] прогнать груминг на живом беклоге — на фикстуре проверялись команды, а не сам разбор. Наблюдение к первому прогону: **не выродился ли шаг 4 в «оставить как есть»** — признак тот, что доклад не называет ни одного движения с доводом ## 3. Калибровка — блокирует переезд jellybit - [ ] замер на четырёх находках healthlog: скелет из `null`, откат бинаря, канонизация в транзакции, `-1 >= -1`. Цена и ожидаемый исход — REMAINING, «Главный незакрытый риск» ## 4. Конвейер: что осталось после `resolve` Сам скилл написан (`av-dev-code:resolve`, два сценария — разведка и решение, по чекпоинту у каждого), `task-batch` удалён. Осталось то, что на бумаге не проверяется: - [ ] прогнать сценарий разведки на живой задаче: он написан целиком на бумаге и не исполнялся ни разу. Самое неизвестное — выбор сценария на входе (не уедет ли всё в решение, потому что «способ вроде понятен») и объём того, что разведка пишет в документы - [ ] перемерить скилл `review` тем же вопросом, что и проект целиком: сколько из его стадий реально смотрятся глазами. Тысяча строк, и весь автоматический участок между чекпоинтами держится на них - [ ] чекпоинт «объяснение» собирается из `proposal.md` и `design.md`, а требования к их форме уехали в `openspec/config.yaml` (`rules.proposal`, `rules.design`). **На живом проекте это ни разу не работало:** неизвестно, хватает ли двух артефактов, чтобы объяснение не пришлось дописывать руками ## 5. Мелочь, оставленная аудитом сознательно Одной пачкой, когда будет повод открыть эти файлы, — не раньше: - [ ] «чекпоинт» несёт третий смысл — точка наблюдаемости в коде (`finding-contract.md`, `promote.md`). Слово занято дважды по своему же правилу, но домены разные, и переименование здесь может выйти дороже путаницы - [ ] закрытый словарь `shared/language.md` не содержит ни «конвейера», ни «чекпоинта», ни «груминга» — трёх рабочих терминов репозитория. Список объявлен закрытым, и пополнять его на ходу нельзя - [ ] `move <слаг>` без флагов теперь легален и значит «в конец своей секции» — осмысленная операция, но в прозе не описана нигде - [ ] `reopen` печатает «позиция это приоритет» и для целей роадмапа, где секции очередью не являются ## 6. Обкатка - [ ] один-два цикла healthlog на новом процессе. Наблюдения к первой обкатке два: не выродились ли «границы покрытия» в шаблон (REMAINING, «Открытые вопросы») и **не превратился ли чекпоинт в ритуал одобрения** — признак тот же, дословно повторяющийся текст и согласие без единой правки