Files
kebab/tasks/_template.md
altair823 f9714aa5cb docs(rename): kb → kebab — README, tasks/, docs/, design doc, report
마지막 commit. 모든 .md 안의 `kb` 단어 일괄 갱신.

- 19 개 crate 이름 (`kb-core`, `kb-app`, …) → `kebab-*` (Rust 모듈
  path 표기 `kb_*` → `kebab_*` 포함).
- 미래 component (`kb-tui`, `kb-desktop`, `kb-asr-whisper`, `kb-ocr`,
  `kb-mcp`, `kb-vlm`, `kb-rerank`, `kb-vision-ocr`, `kb-index`,
  `kb-smoke`, `kb-architecture`) → `kebab-*` (P6+ 가 시작될 때
  같은 prefix 사용).
- CLI 명령 예제: `kb ingest` / `kb search` / `kb ask` / `kb init` /
  `kb doctor` / `kb inspect` / `kb list` / `kb eval` →
  `kebab <verb>`. fenced code block + 인라인 backtick 모두.
- XDG paths + env vars + binary 경로 (`target/release/kb` →
  `target/release/kebab`) 동기화.
- design doc / 최초 보고서 / SMOKE / HOTFIXES / phase epic / task
  spec 모든 reference 통일.
- task-decomposition.md 의 `git -c user.name=kb` 는 과거 git history
  기록용 author 정보라 그대로 유지 (실제 git history 의 author 는
  변경 불가).
- `tasks/phase-5-evaluation.md` 의 `status: planned` →
  `completed` 도 같이 (P5-1 + P5-2 PR 머지 후 미반영분).

## 검증

- `grep -rEn "\bkb-[a-z]|\bkb_[a-z]|\.config/kb\b|kb\.sqlite|\bKB_[A-Z]"
   --include="*.md"` 0 hits (task-decomposition.md 의 git author
  제외).
- 모든 file path reference 살아있음 (renamed file 들 모두 새 path
  로 update).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-02 04:01:55 +00:00

2.6 KiB

phase, component, task_id, title, status, depends_on, unblocks, contract_source, contract_sections
phase component task_id title status depends_on unblocks contract_source contract_sections
P<N> <crate-or-module-name> p<N>-<i> <Component title> planned
../docs/superpowers/specs/2026-04-27-kebab-final-form-design.md

<task_id> —

Goal

Why now / why this size

Allowed dependencies

  • kebab-core
  • <other crates per design §8>

Forbidden dependencies

  • <list — every crate banned per design §8 Allowed/Forbidden table>

If any item here is needed during implementation, STOP and update the frozen design doc first.

Inputs

input type source
... ... ...

Outputs

output type downstream consumer
... ... ...

Public surface (signatures only — no new types)

// Cite only types/traits already defined in the frozen design doc.
// If a new helper is needed, mark it "internal" and keep it crate-private.

Behavior contract

  • <determinism / version recording / error policy>

Storage / wire effects

  • DB tables touched (read/write)
  • LanceDB tables touched (read/write)
  • Filesystem paths created/read
  • Wire schema objects emitted (must conform to *.v1)

Test plan

kind description fixture / data
unit ... ...
snapshot ... (JSON freeze) fixtures/...
contract trait round-trip mock impls
integration end-to-end via kebab-app facade tmp workspace

All tests must run under cargo test -p <crate> and not require external network or Ollama unless explicitly stated.

Definition of Done

  • cargo check -p <crate> passes
  • cargo test -p <crate> passes
  • No imports outside Allowed dependencies
  • All emitted wire JSON validates against docs/wire-schema/v1/<schema>.schema.json (when applicable)
  • All record version fields populated per design §9
  • PR body links the relevant design section numbers

Out of scope

  • <explicit list — features that other tasks cover>

Risks / notes

  • <one paragraph max — known traps, version coupling, perf concerns>