Files
dev-skills/av-dev-backlog/skills/backlog/references/task-format.md
T
avandClaude Opus 4.8 074c6f3448 backlog: переименовать плагин в av-dev-backlog, скилл — в backlog
Соглашение об именах: длинное имя плагина с префиксом av-dev- (уникально в
маркетплейсе), короткие имена скилов внутри. Вызов — /av-dev-backlog:backlog,
единообразно для будущих плагинов.

Путь к backlog.py в SKILL.md обновлён под новую раскладку
($CLAUDE_PLUGIN_ROOT/skills/backlog/scripts/backlog.py).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-24 08:52:16 +03:00

7.3 KiB
Raw Blame History

Формат беклога

Заголовок, мета-строку и строку индекса ставит backlog.py add — руками их не пишут. Этот файл описывает, что именно скрипт создаёт и что проверяет check; тело задачи (контекст, шаги, ссылки) дописывает агент.

Файл задачи

<slug>.md в каталоге беклога:

# Раздачи с докачиванием (merge при повторном добавлении)

**Приоритет:** высокий — блокирует типовой сценарий свежих сериалов · **Теги:** layout, ingest

Свежий сериал раздают по мере выхода: торрент с 5 из 10 эпизодов позже
перезаливают целиком, пользователь добавляет раздачу повторно. …

Шаги:
- в плане раскладки отличать «путь занят живой ссылкой того же матча» от коллизии
- merge-раскладка: существующее пропустить, недостающее доложить

Зависит от правила сходимости. Связано: drafts/logical-title-model.md §6.2.
  • Заголовок H1 — он же заголовок строки в индексе, дословно. Тип кодируется префиксом [idea] / [epic]; обычная задача без префикса. Отдельного поля типа нет: два места для одного факта разъезжаются, а префикс виден прямо в индексе, где и принимается решение «брать или не брать».
  • Мета-строка — первая непустая строка после заголовка. Обязателен приоритет, причина после тире желательна, теги опциональны. Поля разделяются ·, их порядок свободный. · — служебный разделитель: в тексте причины его быть не должно, иначе причина обрежется по нему.
  • Тело — контекст (почему это вообще задача), принятые решения, шаги, ссылки на спеки, ADR, черновики, прошлые ревью. Пишется на языке документации проекта.

Тело — не план реализации и не спецификация: принятое и реализованное переезжает в документацию проекта, а файл задачи удаляется.

Слаг

Латиница и цифры, kebab-case, без ведущих, хвостовых и двойных дефисов (foo-bar, не -foo, a--b). Именуется по сути задачи, а не по текущей формулировке: заголовок будет переписан на груминге, а слаг стоит в ссылках из других задач, коммитов и черновиков. Транслит русского названия допустим, если суть иначе не выражается коротко.

Индекс

README.md в том же каталоге: преамбула, затем секции по приоритетам, в каждой — строки вида

- [Заголовок задачи дословно](slug.md) — хук

Хук отвечает на «почему это лежит в беклоге» одним предложением: состояние, остаток, боль. Пересказ первого абзаца бесполезен — он уже есть по ссылке.

Порядок секций задаёт порядок приоритетов, их названия — единственный словарь уровней. Внутри секции порядок значения не имеет. Секции приоритетов — единственные заголовки ## в индексе: любой другой ## в преамбуле проверка сочтёт уровнем приоритета.

Индекс производен: расходится с файлом — правим индекс. Строку индекса руками не пишут — её ставит backlog.py add в секцию приоритета и двигает move.

Кладбище — CLOSED.md

Туда уходит задача, покинувшая беклог без реализации. Строку пишет backlog.py close --reason, а check следит за её форматом:

- 2026-07-23 `versii-kachestvo-repaki` — Версии/качество одного тайтла (репаки,
  апгрейд 1080p → 2160p). Причина: калибровка болей — не боль, ни разу не
  возникло за полгода. Был приоритет: низкий.

Реализованные сюда не попадают: у них остаётся коммит, спека, ADR. У выкинутой не остаётся ничего — и через квартал она возвращается тем же текстом через инбокс. Кладбище — первое место, куда смотрит дедупликация при заведении.

Запись на кладбище не запрещает завести задачу заново: изменился контекст — заводим и ссылаемся на строку кладбища, объясняя, что изменилось.

Тест «готова к взятию»

Задача готова, если из файла отвечаются три вопроса:

  1. Что станет наблюдаемо иначе, когда она сделана — снаружи: пользователю, владельцу сервиса или разработчику. «Отрефакторить X» — не ответ; «перестанет ломаться Y при Z» — ответ.
  2. По чему видно, что закончено. Признак завершённости, а не список работ.
  3. Почему приоритет такой — одна строка.

Не отвечается первый или второй вопрос → это идея, её место в штурме, а не в приоритизации. Приоритизировать идеи бессмысленно: сравнивается неизвестно что.

Отвечается всё, но задача не делается одним заходом и не мерджится целиком → эпик, сперва декомпозиция.

Тест применяется при заведении и на груминге. К старым задачам, которых операция не касается, задним числом не применяется — беклог не переоформляют «заодно».