altair823
241ded59df
test(app): multi-scanned PDF chunk_id collision-free integration test (Bug #3 regression)
v0.20.0 sub-item 1 bugfix Step 3 (Group C) — integration-level regression
for Bug #3 (intra-doc chunk_id collision under aggressive overlap).
- `crates/kebab-app/tests/common/mod.rs`: `pub mod mock_ocr;` 1 line append.
- `crates/kebab-app/tests/common/mock_ocr.rs` (new): MockOcrEngine lift +
`single` / `per_page` ctor (backward-compat single + per-page cursor).
- `crates/kebab-app/tests/pdf_ocr_apply.rs`: inline MockOcrEngine 제거 +
`mod common; use common::mock_ocr::MockOcrEngine;` import. 10 ctor call
site migration (`MockOcrEngine { .. }` → `MockOcrEngine::single(...)`).
- `crates/kebab-app/tests/multi_scanned_pdf_ingest_no_chunk_id_collision.rs`
(new): F1 + F2 scanned PDF + Bug #3 trigger shape (10 char "가" + ". " +
500 char "나") via mock OCR. assertion: chunk_id global uniqueness (HashSet
dedup) across F1 + F2; F2 trigger text produces ≥2 chunks (collision shape).
- C1 decision: Option A (share via tests/common/mock_ocr.rs). Facade mock
injection unavailable (OllamaVisionOcr hardcoded) — helper-level chain test
(apply_ocr_to_pdf_pages → PdfPageV1Chunker) adds value beyond unit B5.
spec: docs/superpowers/specs/2026-05-27-v0.20-sub1-bugfix-spec.md (§4.5)
plan: docs/superpowers/plans/2026-05-27-v0.20-sub1-bugfix-plan.md (Step 3)
prior: 436fd01 (Step 2 Bug #3 chunk_id fix)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-27 13:45:38 +00:00
..
2026-05-27 13:45:38 +00:00
2026-05-02 03:28:08 +00:00
2026-05-25 06:45:32 +00:00
2026-05-26 03:01:58 +00:00
2026-05-09 17:49:23 +09:00
2026-05-24 12:21:34 +00:00
2026-05-20 06:51:07 +00:00
2026-05-05 11:53:19 +00:00
2026-05-04 18:12:47 +00:00
2026-05-02 21:39:39 +00:00
2026-05-26 03:01:58 +00:00
2026-05-04 18:12:47 +00:00
2026-05-27 10:10:58 +00:00
2026-05-27 09:18:49 +00:00
2026-05-26 03:01:58 +00:00
2026-05-05 11:55:38 +00:00
2026-05-27 13:45:38 +00:00
2026-05-26 04:42:37 +00:00
2026-05-27 13:45:38 +00:00
2026-05-27 13:32:09 +00:00
2026-05-20 07:38:10 +00:00
2026-05-07 16:12:23 +09:00
2026-05-10 12:34:57 +09:00
2026-05-24 11:54:25 +00:00
2026-05-03 10:14:17 +00:00
2026-05-09 01:30:10 +09:00
2026-05-26 03:01:58 +00:00
2026-05-05 12:13:13 +00:00
2026-05-20 08:03:38 +00:00
2026-05-20 05:27:21 +00:00