Files
kebab/HANDOFF.md
altair823 5596d41565 chore: bump version 0.32.0 → 0.33.0
28.4k 문서 도그푸딩이 드러낸 다섯 결함(#228–#232)을 전부 처리한 릴리스.
다섯 건 모두 단위 테스트가 잡지 못하는 종류였다 — 규모에서만 드러나는 성능
붕괴, 조용히 사라지는 내용, 멈춘 것처럼 보이는 진행 표시.

minor 트리거는 두 가지다. #232 의 parser_version cascade
(pdf-text-v1 → pdf-text-v2, 기존 색인 PDF 재처리 유발)와 신규 config 키
([ingest.pdf.ocr] render_library / render_dpi). 나머지 셋은 additive wire
변경 + 관측성 개선이라 자체로는 patch 급이다.

  #232  스캔 PDF 를 페이지 렌더링으로 OCR — CCITTFax/JBIG2/Flate/JPX 가
        조용히 버려지던 것을 pdfium 런타임 로드로 커버. 없으면 DCTDecode
        폴백 + 왜 건너뛰었는지 명시. 단일 바이너리 유지.
        한국어 CCITT 스캔 CER 12.6~15.7% (이 릴리스 이전엔 본문 0자).
  #229  chunks_fts 삭제를 rowid 조회로 (V016) — 문서 200건 삭제
        1590초 → 2.0초. 검색 결과 불변, 재색인 불필요.
  #230  Lance fragment 압축 + 삭제 배치화 — 2.8만 문서 색인 속도가 분당
        32~36건으로 평탄 유지(이전 30.7 → 4.3 단조 하락), 15 GB → 2.8 GB.
  #228  삭제 sweep 을 진행바·ndjson 로그에 노출 — 무표시 구간이 hang 으로
        오인되던 것. sweep 이 취소 플래그도 보게 했다.
  #231  derivation cache 배칭 + 계측 — 가설은 재현되지 않았다(히트 139초
        vs 우회 1180초). 이슈 스스로 예측한 대로 #229 가 해소했다.

도그푸딩 evidence 는 tasks/HOTFIXES.md 2026-08-16 / 2026-08-17 항목.
사용자 영향 설명은 docs/release-notes/v0.33.0-draft.md.

곁들여, `cargo clippy --workspace --all-targets -- -D warnings` 가 main 에서
실패하고 있던 것을 고쳤다(툴체인 상승으로 새 lint 둘이 기존 코드에 걸림).
방치하면 새 위반이 그 그늘에 숨는다는 것을 실제로 겪었다.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017c9JwQq8ZkGvYjpKXMiDhF
2026-08-17 06:23:20 +09:00

4.4 KiB
Raw Blame History

HANDOFF — 진척도

"지금 어디까지 됐고 다음에 뭘 할지"의 phase-단위 단일 출처. 사용법 → README.md, 구조 → docs/ARCHITECTURE.md, per-component 진행 → tasks/INDEX.md, 머지 후 deviation(동작 진실) → tasks/HOTFIXES.md, 버전별 변경 → CHANGELOG.md. 전체 문서 지도 → DOCS.md.

한 줄 요약

현재 v0.33.0. P0P7 + P9(CLI/MCP) + P10 머지 완료, P8(audio)·P9-5(desktop)만 보류. kebab ingest 가 markdown · 이미지(OCR+caption) · PDF(텍스트+page citation+scanned OCR) · 소스코드(Rust/Python/TS/JS/Go/Java/Kotlin/C/C++ AST + Tier2 리소스 + Tier3 fallback) 를 단일 binary 로 색인. kebab search(lexical/vector/hybrid RRF) / kebab ask(RAG + 근거 인용 + NLI groundedness + multi-hop) 가 매체 가로질러 동작. UI 는 CLI + MCP stdio server(TUI 는 v0.31.0 에서 제거).

Phase 로드맵

Phase 내용 핵심 crate 상태
P0 Workspace 뼈대 + 도메인 계약 + ID recipe kebab-core/kebab-config/kebab-app/kebab-cli
P1 Markdown ingestion (walk→parse→chunk→SQLite) kebab-source-fs/kebab-parse-md/kebab-chunk/kebab-store-sqlite
P2 FTS5 lexical 검색 + citation kebab-search
P3 embedding + LanceDB + hybrid(RRF) kebab-embed-local/kebab-store-vector/kebab-search
P4 LLM + RAG + grounded answer + NLI kebab-llm-local/kebab-rag/kebab-nli
P5 golden query / regression eval kebab-eval
P6 이미지 ingestion (OCR + caption) kebab-parse-image
P7 PDF text + page citation + scanned OCR kebab-parse-pdf + kebab-app::pdf_ocr_apply
P8 음성 transcription kebab-parse-audio ⏸ 보류 (whisper-rs 시스템 dep brainstorm 필요)
P9 agent surface (CLI/MCP/desktop) kebab-mcp, kebab-desktop(P9-5) 🟡 CLI/MCP , desktop ⏸
P10 code ingest framework kebab-parse-code/kebab-chunk (Rust/Py/TS/JS/Go/Java/Kotlin/C/C++ + Tier2/3)

trait 전용이던 kebab-embed/kebab-llm/kebab-parse-types/kebab-normalize 는 흡수됨(각각 kebab-core mock feature / kebab-parse-md module) — 현재 20 crate. 상세는 docs/ARCHITECTURE.md.

최근 마일스톤

버전별 변경은 CHANGELOG.md, 머지 후 deviation 의 dated 로그는 tasks/HOTFIXES.md(동작이 설계와 다를 때의 진실)에 있다. 굵직한 흐름만:

  • v0.33.0 — 28.4k 문서 도그푸딩이 드러낸 다섯 결함(#228#232). 스캔 PDF 를 페이지 렌더링으로 읽어 CCITT/JBIG2/Flate/JPX 커버(pdfium 런타임 로드, 없으면 DCTDecode 폴백 + 이유 명시), chunks_fts 삭제 800배, Lance 압축, sweep 진행 표시, 임베딩 캐시 계측.
  • v0.32.0 — ponytail-audit over-engineering 정리 (죽은 scaffold 제거, 9 AST chunker→1, shim crate 흡수 22→20).
  • v0.31.0 — 척추 단순화(TUI·세션·candle 제거, config v5) + 임베딩/OCR/caption 캐시 전면화.
  • v0.270.30 — paddle-onnx 네이티브 OCR · provenance 출처 필터 · md-heading-v2 oversize 분할.
  • v0.180.26 — multi-hop RAG + NLI 검증 · 코드 ingest(P10) · arctic 임베더 · 한국어 형태소 검색.

다음 task 후보

  • P9-5 desktop (Tauri) — 마지막 구조적 미완 component. kebab-desktop crate + PDF citation rendering UI. 사용자 우선순위(책·PDF) 부합.
  • P8 audio — whisper-rs 시스템 dep vs 외부 transcription endpoint 결정 필요. 사용자 패턴상 보류.
  • 그 외는 도그푸딩 follow-up — 발견 시 HOTFIXES 에 dated entry + 필요 시 ARCHITECTURE 갱신.

v0.33.0 도그푸딩에서 나왔으나 아직 이슈로 등록하지 않은 것 셋: kebab resetstorage.data_dir 을 무시하고 XDG 기본 경로를 지운다, 자동생성 파일 탐지가 코드 파일이 아니라 모든 파일에 적용된다, 기본 설정에 환각 방어가 없다(nli_threshold 기본값 꺼짐).

검증

릴리스 binary 의 종단 동작은 docs/SMOKE.md(격리 KB 1세션 검증) + docs/DOGFOOD.md(기능별 시나리오). 실 데이터 도그푸딩 evidence 는 HOTFIXES dated entry.