Files
board-viewer/.tasks/board-viewer-ux-show-slug.md
vitya cfa4572731 tasks: round1 UX feedback — 6 dev-tasks + review umbrella [board-viewer-ux-round1-review]
User первые впечатления после go-live board.kzntsv.site:
- drawer падает TypeError (приватные репо + no browser token; bundle md
  в build-time — единственно верное решение)
- slug не виден на карточке (только в data-attr)
- дата без времени, неясный формат
- owner-pill дублируется (single-owner whitelist → visual noise)
- нет нумерации задач (BV-12 / T-001 shorthand нужен)
- done-tail слишком длинный (нужен render-side cutoff/collapse)

Все 6 — code-impl в board-viewer (не deploy → не в .admin, per workshop §5).
TDD posture везде (project follow tdd-criteria).

Drawer bug = critical (clear-impl: bundle md в build-time, root-cause grounded).
Show-slug + full-datetime = clear-impl, простой TDD-цикл.
Owner-conditional = clear-impl (single vs multi owner branches), 2 fixtures.
Task-numbers + done-cutoff = design-first (4 open questions каждый),
brainstorm если recommendations не пройдут single-session.

+ review umbrella 🔵 blocked-by 6 slug'ами (workshop §4 mandatory).

Ops-handoff (rebuild image + Portainer pull) — отдельная taska в
.admin/[board-viewer-redeploy-ux-round1] (workshop §5).
2026-05-22 18:39:01 +03:00

1.6 KiB
Raw Permalink Blame History

board-viewer-ux-show-slug

Goal

Карточка не показывает slug визуально. Юзер видит только description (первая строка после ## 🟢 [<slug>] — <desc>) и не понимает «какая это таска по имени». data-slug атрибут есть, но в header карточки не рендерится.

Добавить slug как видимый sub-heading или badge в верхней части карточки (под/над description-line, в моноширинном шрифте чтобы выделялся).

TDD posture

Mode = TDD (project follow tdd-criteria). Сначала failing render-test: ожидать что output renderCard(record) содержит <code class="card-slug">board-viewer-pointers</code> (или эквивалент). Затем impl в src/render.ts.

Key files

  • src/render.ts (рендер карточки — добавить slug-element)
  • static/board.css (стиль .card-slug — monospace, dim color, маленький)
  • tests/render.test.ts — новый тест

Acceptance

  • Slug виден на каждой карточке (любой статус)
  • Тест: html-output карточки содержит slug в parseable form (не только в data-атрибуте)
  • Smoke: визуально на board.kzntsv.site после redeploy — slug читается, не сливается с description