Files
dev-skills/TODO.md
T
avandClaude Opus 5 d7e9740c73 секция роадмапа «Сопровождение» и общий словарь трёх мест
«Разработка» называла слишком много: роадмап весь про разработку, и
секция с таким именем не отличалась от остальных ничем. Стало
Сопровождение | Operations.

Смысл расширен вместе с именем: было «инструмент и процесс», стало «чем
держат проект: инструмент, процесс, эксплуатация». Расширение не
косметическое — английское Operations при узком смысле обещало бы
эксплуатацию, а внутри лежал бы линтер. Метрики, логи, инфраструктура и
выкладка в эту секцию просятся и так.

Заодно синхронизирован словарь трёх мест канона, которые про одну тему.
Сопровождение — всё, чем держат проект; эксплуатация — его часть, работа
системы на проде. ROADMAP.md, секция Сопровождение — план работ;
architecture.md, раздел «Эксплуатация» — как устроено сейчас;
эксплуатационный проход ревью — оптика проверки. Сливать их в одно слово
было бы ошибкой: они отвечают на разные вопросы. Синхронизирован
словарь, а не границы; дом — canon.md. Слово «поддержка» запрещено
вовсе: в нём слышится помощь пользователю.

Граница с возможностями проходит по тому, кто наблюдает: «приложение
сообщает о своём состоянии» — возможность, «дежурный видит состояние на
одном экране» — сопровождение.

Версия канона не менялась, и это законно: ни один проект на каноне 3 не
стоит, оба держат канон 2. Запись версии 3 правится как черновик, а не
как история — версия отделяет одно состояние проектов от другого, а не
одну редакцию текста от другой.

DECISIONS тема 25 (ЧЧЧ, ШШШ, ЩЩЩ, следствия 96–97).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-04 20:17:53 +03:00

13 KiB
Raw Blame History

Работы по итогам разбора

Порядок и обоснование — DECISIONS.md, тема 8. Номера в скобках — следствия оттуда.

Замер (шаг 3) — единственный шаг, который нельзя переставить: он блокирует переезд jellybit. Всё остальное можно тасовать.

0. Предусловие

  • git push092d07c..88c5d97, 17 коммитов ушли на origin (37)
  • claude plugin marketplace update av-dev-skills — клон встал на 88c5d97 и видит av-dev-pm и av-dev-pipeline

1. Репозиторий плагинов

1.1 Переименование

  • av-dev-tasksav-dev-pm: каталог, plugin.json, marketplace.json (18)
  • пространство имён во всех текстах: av-dev-tasks:sessionav-dev-pm:session, включая ссылку из task-pipeline (18)

1.2 Канон — единственный дом определения

  • av-dev-pm/skills/canon/references/canon.md — раскладка, роли документов, правило единственного дома. Читают init, canon, docs (AA)
  • av-dev-pm/skills/canon/references/changelog.md — журнал версий канона, версия 1 (26)

1.3 Правки существующих скиллов

  • tasks: убрать слот 6 «Команда учёта задач» (33)
  • tasks: путь каталога жёсткий docs/tasks, убрать цепочку разрешения (F)
  • tasks: .tasks.jsondocs/.pm.json, там же версия канона и путь миграций (23, 30)
  • tasks: убрать слоты 3 «куда переезжает суть» и 5 «оракулы» — отвечает канон и семантика гейта (тема 4)
  • session: убрать слот 7 и слот 4 «где живёт разбор процесса» (33, K)
  • session: переписать «Стимулы, которые процесс создаёт» — снятая граница выбила опору у трёх защит (19)

1.4 Новые скиллы

  • init — интервью по брифу → канон нового проекта (R)
  • canoncheck / adopt / upgrade; поглощает скилл adopt (R, 21, 24)
  • docs — содержимое канона: ADR из архивного design.md, промоут конвенций, запись в research/ и review.md, чистка architecture.md (X)
  • docs.py — раскладка, лишние файлы, битые ссылки, версия, плейсхолдеры, маркеры долга; сверки миграции ↔ database.md и capability ↔ architecture.md (T, 31)

1.5 av-dev-pipeline

  • удалить скилл project-brief и references/{project-brief,brief-template}.md (13)
  • снять ветки деградации OpenSpec в трёх местах: task-pipeline, review-pipeline, task-batch (1)
  • девять charter'ов: разделы брифа → пути канона; ops/adversary/reimpl обязаны сшивать research/ и database.md (14, 15)
  • review-pipeline: убрать бриф, поразрядная деградация по документам (16)
  • task-pipeline шаг 9 → построчный доклад по документам канона (28)
  • task-pipeline/task-batch: закрытие задачи вызовом скилла av-dev-pm:tasks, слот убрать (32, 33)
  • promote.md шаг 3: перечень механизированного → conventions/README.md (29)
  • описание плагина: «требует OpenSpec» (2)

1.6 Прочее

  • av-dev-backlog — пометить устаревшим, переписать описание, чтобы не ловило триггер (Q)
  • README.md маркетплейса — три плагина, канон, установка
  • HISTORY.md — сжать AGENTIC-TASKS.md до истории решений (CC)
  • REMAINING.md пересобрать: пункт 2 отменён, четыре вопроса закрыты, калибровка стала обязательной (38)

1.7 Линтеры скриптов (тема 9)

  • pyproject.toml: ruff + pyrefly через uv, версии прибиты (DD, FF)
  • запрет внешних зависимостей двумя способами: banned-api + пустое окружение pyrefly (EE)
  • RUF001RUF003 выключены, av-dev-backlog исключён (GG, HH)
  • починены 27 находок ruff и 14 pyrefly; os из tasks.py ушёл (40, 41)
  • раздел «Проверка скриптов» в README.md

1.8 Ревью двумя проходами (тема 10)

  • reopen берёт текст из HEAD, когда коммита удаления ещё нет (JJ)
  • шаг 11 коммитит учёт вторым коммитом; батч проверяет чистоту дерева (JJ)
  • фиктивный ключ tasks.sections убран из четырёх документов (KK)
  • init пишет конфиг в docs/.pm.json; looks_like_tasks его читает
  • урожай спринта заводится до sprint close, слаг — из его отчёта
  • ответ на вопрос опустошает раздел «Вопросы» — во всех трёх местах
  • путь отчёта триажа переживает архивацию (5 мест)
  • review-specs получил режим 3 — стык после слияния
  • остальные 12 находок: sprint.md, «9а», перечень проектных копий, параллельность в батче, триаж в финальной сверке, триггеры профиля, 8–12

1.9 Ревью зависимостей между плагинами (тема 11)

  • опоры приёмки названы абстрактно, деградация без конвейера объявлена (MM)
  • ветка деградации шага 9 ходит в свой project-facts.md (NN)
  • docs даёт ветку «конвейера нет» для журнала и промоута
  • форма журнала дефектов сведена к дому, копия помечена в changelog.md
  • specs вернулся в читатели docs/research/; дом списка назначен
  • пайплайн не называет items/ и SPRINT.md — их знает av-dev-pm
  • манифесты объявили av-dev-pm опциональным для конвейера (49)

1.10 Механическая проверка копий (тема 12)

  • scripts/copies.py: маркеры дома и копии, побайтовая сверка (OO)
  • строгий id, повторяемый в закрывающем маркере (PP)
  • помечены два контракта; «когда заводить ADR» сведён к дословному (50)
  • раздел «Проверка копий правил» в README.md, правило — в обоих домах

2. healthlog — первая боевая проверка

  • canon adopt; docs/backlog/docs/tasks/
  • architecture.md 1662 строки → обзор, остаток маркерами (W)
  • после выноса поведения — замерить остаток architecture.md и решить по каталожной форме: жмёт → канон версии 4 для architecture.md и review.md, точка входа README.md (тема 16, GGG, 65; версию 3 занял роадмап с родом работы, тема 17, 68)
  • завести security.md с периметром первой строкой (J)
  • review-journal.mdreview.md + настройка конвейера (K, L)
  • conventions.mdconventions/, local-research.mdresearch/ (G)
  • plan.mddocs/tasks/ROADMAP.md (E)
  • завести docs/adr/
  • CLAUDE.md: severity инвариантов, семантика гейта, убрать раздел «Процесс» (M, N)
  • docs.py check в task gate (V)
  • почистить openspec/config.yaml (C)
  • удалить проектные копии: .claude/skills/healthlog-{task,review}-pipeline и девять .claude/agents/healthlog-review-*.md — они прошлого поколения и после переезда указывают на docs/conventions.md, docs/local-research.md, docs/review-journal.md, которых уже не будет

3. Калибровка — блокирует шаг 5

  • замер на четырёх находках healthlog: скелет из null, откат бинаря, канонизация в транзакции, -1 >= -1 (1 из REMAINING, 14)

4. Обкатка

  • один-два спринта healthlog на новом процессе

5. jellybit

  • BRIEF.mddocs/passport.md, обновить
  • docs/specs/{recognition,review-ux,workflow}.md — сверить с capability и удалить как дубли (10)
  • docs/specs/architecture.mddocs/architecture.md, database.mddocs/database.md, jellyfin-layout.mddocs/research/
  • docs/review/journal.mddocs/review.md
  • drafts/ растворить: roadmap → ROADMAP.md, conventions-backlog → задачи [idea], logical-title-model → ADR (H)
  • docs/backlog/docs/tasks/
  • удалить проектные копии скиллов и агентов (4 из REMAINING)
  • av-dev-backlog удалить из маркетплейса

6. Канон версии 3 — повысить живые проекты (тема 17)

Оба проекта стоят на каноне 2 и держат docs/tasks/PLAN.md: healthlog 55 задач, jellybit 43. Шаги повышения — changelog.md, запись «Версия 3»; делаются скиллом av-dev-pm:canon в режиме upgrade.

  • healthlog: PLAN.mdROADMAP.md, ссылки, "canon": 3
  • jellybit: то же
  • род работы и раздел «Затрагивает» — не задним числом: сперва то, что идёт в ближайший набор (sprint take без них откажет), остальное по ходу переоценки (PPP)
  • секции роадмапа: порядокЗапланировано, темыНаправления, завести Готово и Сопровождение; прозаические разделы healthlog («Что уже пройдено», «Почему в таком порядке») разложить — звенья строками в Готово, обоснование очереди прозой внутри Запланировано (тема 19, 80). check теперь называет чужую секцию ошибкой, так что шаг обязателен
  • переформулировать цели ответом на «что приложение будет уметь»; цели не про приложение («Процесс и качество разработки» в jellybit) — в Сопровождение
  • check --fix на обоих: поднимет написание канонических секций, поставит отбивку после заголовков и сведёт секцию в мете файлов с заголовками. Секции беклога переименовать руками — имена выбирал проект (тема 20, ККК)
  • заголовки задач в форму действия — не задним числом: по мере попадания задачи в работу. check печатает их число, task-form предложит формулировки пачкой (тема 20, ЕЕЕ)