Files
dev-skills/REMAINING.md
T

11 KiB
Raw Blame History

Остатки и открытые вопросы

Состояние на 2026-08-03, после ввода av-dev-tasks и av-dev-pipeline (коммиты 9219f4a20dca290eca206).

Плагины написаны, проверены тремя проходами ревью и починены по находкам. Но ни один из них ещё не подключён ни к одному проекту, а часть работы осознанно отложена. Здесь то, что осталось, — с причинами, потому что через месяц причина забывается раньше факта.

Что осталось сделать

Порядок примерно соответствует зависимостям: верхнее мешает нижнему.

1. Калибровка переписанных проходов

Все девять charter'ов ревью переписаны при выносе в плагин: предмет проверки заменён ссылкой на раздел брифа. references/calibration.md самого плагина требует при такой правке замерить, помогла ли она, — замера нет ни одного.

Оценка «проход всё ещё нашёл бы находку» получена рассуждением по текстам, и ревьюер честно пометил её Confidence: medium. По правилам плагина такая оценка не поднимается выше major.

Пробы готовые, синтетических не нужно — четыре реальные находки прошедшей сессии healthlog:

  • скелет из null затирает маршрут тренировки молча и необратимо;
  • откат бинаря поверх новой схемы стартует без единого слова;
  • канонизация внутри транзакции — 768 МиБ пика, 5.019 с удержания блокировки;
  • -1 >= -1 читается как «журнал разобран целиком».

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

2. Завести брифы

Скилл av-dev-pipeline:project-brief написан и собирает бриф из CLAUDE.md, архитектуры, Taskfile и конвенций. Но брифов нет ни у healthlog, ни у jellybit, а без них конвейер идёт в деградированном режиме: critical по основанию «нарушен инвариант проекта» не присваивается.

При починке бриф заполнялся на обоих проектах для проверки контракта (841 и 734 строки) — эти заполнения были черновыми, в скретчпаде, и в проекты не попали. Повторить и положить в репозитории.

3. Переезд healthlog на новый формат

docs/backlog/docs/tasks/ с items/, PLAN.md, BACKLOG.md, SPRINT.md, REJECTED.md. Скилл av-dev-tasks:adopt для этого написан и прогнан на копии живого беклога: 12 целей, 38 задач, 36 переименований слагов из транслита в английские, 86 ссылок поправлено в 36 файлах, check зелёный.

Переходное состояние после переезда известно числом: задач без цели — 0, без двух критериев приёмки — 29. check при этом зелёный, но sprint take такие задачи не возьмёт; закрывается порциями переоценки на сессиях.

Вместе с переездом придётся переписать то, что противоречит новой семантике: раздел «Процесс» в CLAUDE.md, преамбулу docs/plan.md («свой приоритет», «беклог — что брать следующим») и строку «блокеры разбираются пачками» — по новому определению блокер эскалируется немедленно, пачками разбираются вопросы.

4. Удалить проектные копии

После подключения плагинов в healthlog остаются два источника правды: .claude/skills/healthlog-task-pipeline/, healthlog-review-pipeline/ и девять .claude/agents/healthlog-review-*.md. Проектные факты из них уезжают в бриф, сами файлы удаляются.

У jellybit хуже: его скиллы называются task-pipeline, review-pipeline, task-batchровно как в плагине. Claude Code не переопределяет их, а держит обе пары, так что короткое имя может увести в устаревшую проектную копию, и молча. Тексты плагина зовут своё через пространство имён (av-dev-pipeline:review-pipeline), но проектные копии всё равно надо удалять при установке.

5. Перевод jellybit

Отложен сознательно: сперва обкатать на healthlog один-два спринта, потом переносить. Иначе мы одновременно вводим непроверенный процесс и ломаем работающий проект.

Объём: беклог с приоритетами высокий/средний/низкий без целей и спринтов, одиннадцать ревью-агентов старого поколения (включая idiom и negative, упразднённые в healthlog), три скилла с коллизией имён. Часть capability-map живёт в памяти агента, а не в файле, — при переводе это надо материализовать.

Открытые вопросы

Что делать с av-dev-backlog. В маркетплейсе сейчас оба плагина, и их описания ловят один и тот же триггер («добавь задачу в беклог») — агент выберет случайный. Пометить устаревшим, удалить из маркетплейса или оставить до перевода jellybit, который пока на нём и живёт.

Оставлять ли раздел ## Триггеры в контракте брифа. Он задумывался как проектная конкретизация правила выбора профиля ревью, но при заполнении на обоих проектах выродился в пересказ таблицы профилей самого скилла. Контракт не запрещает скопировать общее правило, а слот, который заполняется копированием, пользы не несёт.

Название процесса. Плагины названы, процесс — нет. Обсуждались кодовое имя из Средиземья (fellowship / council, под стать rivendell и umbar), нейтральная «каденция» и описательные варианты. Для плагинов выбрана функция (av-dev-tasks, av-dev-pipeline), но у процесса как целого имени нет.

Судьба AGENTIC-TASKS.md. Черновик дизайна лежит в корне healthlog и не закоммичен. Содержимое переехало в плагины, значит документ стал вторым домом для тех же правил — а расхождение двух домов ровно то, против чего он сам и написан. Либо удалить, либо сжать до истории решений («почему не Scrum», числа первого замера, что и почему отвергнуто).

Известные пределы — приняты, чинить не планируется

Транзакции на несколько файлов нет. POSIX её не даёт без журнала. Окно сжато до цепочки rename без ввода-вывода, а всё, что в окне может разъехаться, сделано производным и восстанавливается check --fix без потерь.

Оракул в критериях приёмки проверяется эвристикой. Число пунктов проверяется жёстко, наличие оракула — по слову, и это только замечание. В тексте прямо сказано, что проверено меньше, чем требуется, — притворяться тут дороже, чем признаться.

Recall прохода по конвенциям равен качеству конвенций проекта. Своего списка у него больше нет: критерий берётся из файла проекта. На проекте с тонкими конвенциями проход почти пуст, и charter это признаёт вслух.

Доменного словаря в брифе нет. Charter'ы получают факты, но не термины; словарь проход строит каждый раз заново из спек и архитектуры. Цена не измерена.

adopt не удаляет источники и не правит подписи ссылок. Удалять чужое молча нельзя, а подпись вида [docs/backlog](docs/tasks/BACKLOG.md) правится глазами. И то и другое печатается в отчёте, а не проглатывается.