Files
board-viewer/.tasks/2026-05-22-00212-board-viewer-ux-task-numbers.md

40 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# board-viewer-ux-task-numbers
## Goal
User: «нам явно не хватает нумерации задач». Сейчас каждая задача — slug (`board-viewer-pointers`). Slug informative, но длинный. Хочется shorthand (`T-001` / `BV-12` / etc.) для разговора, ссылок, memory-references.
## Design open questions — РЕШИТЬ ДО ИМПЛА
1. **Scope нумерации:** per-repo (BV-12, BO-3) или global cross-repo (T-78)? Per-repo стабильнее (новый репо не сдвигает существующие numbers).
2. **Источник truth:** хранить number в STATUS.md (комментарий или новый field в block)? Или auto-derive из order/position?
- **Source-of-truth в STATUS.md** — стабильно (number не меняется), но требует ручной maintenance при создании каждой таски.
- **Auto-derive** — нулевая maintenance, но number меняется при reorder/insert.
- Recommend: source-of-truth, с конвенцией «при создании новой таски вписать `<!-- num: BV-NN -->` сразу после `## ...` строки». Reader парсит, рендер показывает.
3. **Format:** `BV-12`, `BV12`, `T-001`, `#12`? Recommend `BV-12` — short, читается, не конфликтует с slug.
4. **Старые таски:** нумеровать ретроактивно? Recommend да, один проход — выписать number для каждой существующей таски в каждом репо, commit отдельно «chore: number existing tasks».
## TDD posture
**Mode = TDD** (после resolve design-вопросов). Failing test: парсер извлекает `num` из STATUS.md block, render показывает badge с number в карточке. Затем impl.
## Pre-impl
- Brainstorm перед коммитом первой строки кода. Дизайн — короткий (4 вопроса выше), может занять одну session-петлю с user. Если будет нужен heavy brainstorm — стартовать `.workshop/.brainstorm/board-viewer-task-numbers.md` через `recommend-don't-menu` мод.
## Key files
- `src/parser.ts` (парсинг `<!-- num: ... -->` comment)
- `src/render.ts` (badge на карточке)
- STATUS.md всех 5 репо в whitelist (ретроактивная нумерация)
- `tests/parser.test.ts` + `tests/render.test.ts`
## Acceptance
- Каждая карточка показывает number-badge (`BV-12`) рядом со slug
- Тесты pass
- Все существующие таски в whitelist-репо имеют `<!-- num: ... -->` (или эквивалент)
- Конвенция документирована в `using-tasks` skill (или эквиваленте) — «новые таски имеют number с момента создания»
<!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: .workshop / 2026-05-22 / trigger: user-ux-feedback-round1 -->