P9-1~P9-4 머지 후 사용자가 직접 도그푸딩 하며 수집한 16 항목 UX 피드백을 20 개 single-PR 사이즈 task spec 으로 분해. 각 spec 은 frontmatter (depends_on / unblocks / source_feedback), Goal, Allowed deps, Public surface, Behavior contract, Test plan, DoD, Out of scope 절 포함. 추가: - p9-fb-01 ~ 20-*.md: 분해된 task spec 20 개 - p9-dogfooding-feedback.md: master index + 우선순위 + 권장 실행 순서 + spec PR vs impl PR 절 - INDEX.md: p9-fb-01 ~ 20 link 추가 - docs/superpowers/plans/2026-05-02-p9-fb-06-reset-command.md: 첫 후속 작업 (kebab reset 명령) 의 6-task 구현 plan - .gitignore: .worktrees/ 추가 (superpowers worktree skill 용) 피드백 항목 → task spec 매핑은 p9-dogfooding-feedback.md 의 표 참조. 실행 시작 task: p9-fb-06 (reset 명령) — 도그푸딩 막힘 강도 1위. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2.0 KiB
2.0 KiB
phase, component, task_id, title, status, depends_on, unblocks, contract_source, contract_sections, source_feedback
| phase | component | task_id | title | status | depends_on | unblocks | contract_source | contract_sections | source_feedback | ||
|---|---|---|---|---|---|---|---|---|---|---|---|
| P9 | kebab-tui (ask pane) | p9-fb-11 | Ask answer markdown rendering (bold/italic/code/list/table) | planned | ../../docs/superpowers/specs/2026-04-27-kebab-final-form-design.md |
|
p9-dogfooding-feedback.md item 9 |
p9-fb-11 — Ask markdown render
Goal
ask 답변의 markdown 문법을 ratatui Span / Line 으로 변환해 시각 구분. raw **bold** 사라지고 실제 bold 표시.
Allowed dependencies
pulldown-cmark(이미 워크스페이스에 있음).- ratatui (기존).
Public surface
kebab-tui::markdown::render(text: &str, theme: &Theme) -> Vec<Line<'static>>. theme 은 p9-fb-14.
Behavior contract
inline:
**bold**/__bold__→Modifier::BOLD.*italic*/_italic_→Modifier::ITALIC.- inline code
`→ bgtheme.code_bg. - 링크
[text](url)→ underline + theme.link.
block:
- heading
#,##, ... → fg color 에 따라 hierarchy. - list bullet
-/*/1.→ indent + bullet char. - code fence
→ 박스 widget + monospace assumed. - table
| col |→ ratatuiTablewidget. column auto-width. - blockquote
>→ 좌측 vertical bar + dim fg.
streaming 처리: 마지막 incomplete inline span (e.g. 닫지 않은 **) 은 raw 로 표시. complete 부분만 styled. 매 frame 재 parse — cheap, ms 단위.
Test plan
| kind | description |
|---|---|
| unit | **hi** → 1 Span with BOLD modifier |
| unit | code fence → CodeBlock 변환 |
| unit | table 2x2 → ratatui Table |
| snapshot | 복합 답변 (heading + list + code) → snapshot 비교 |
DoD
cargo test -p kebab-tui통과- 도그푸딩: bold / italic / table 답변 정상 렌더
- CLI ask 출력은 raw markdown 유지 (terminal 호환성)
Out of scope
- 이미지 (markdown img tag) 렌더링 — 터미널 한계
- 링크 클릭 / 따라가기 (P+)