Commit History
-
feat(documents): v2 unstructured ingestion, image-token, scoped retrieval
Rifqi Hafizuddin +1: Claude Opus 5.5UNSTRUCTURED_V2_PLAN U1-U5 + the U7 planner-catalog change. - /api/v2/document*: doctypes, upload, process, list for pdf/docx/txt, mirroring Go's shapes; delete stays on Go (U-D7). Parsing v2 (Mistral OCR) -> figures to the private Supabase bucket -> embeddings in the existing `documents` collection tagged parser_version=v2. - POST /api/v2/document/image-token: 1h presigned URLs for asset:// markers, bound-document + owner + key-prefix checks, never persisted. - Retrieval is v2-only and analysis-scoped in SQL (no scope row -> none); scope is part of the Redis key. retrieve_knowledge pushes its scope down, drops a source_id post-filter that never matched, and whitelists metadata. - structured_flow adds the analysis's bound documents to the planner catalog. Live: BUMA PDF -> 28 chunks, 2 figures; figure signed and fetched (200 image/jpeg). Suite 939 passed / 7 skipped; ruff adds nothing; import main OK. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>b848f73
-
/fix parsing and term extract (#21)
- [NOTICKET] fix: retire the fuzzy clustering pass; add E1c post-cluster recall (2cc21c92688d662c5cfdfeeb6784bb85b98575ca) - [NOTICKET] feat: parsing schema 0.4.0 — asset pointers for figures and tables (e662ac089b741c90e19b9f51f4933fb97a1225bc) - [NOTICKET] docs: sync REPO_STATUS / DEV_PLAN / contracts for pipeline v2 (c3c184d83bec4a4d42e9ad3f7265560802817e5b) - [NOTICKET] docs: close K15 with the paid v1-vs-v2 comparison (62782fed9292f67d7b376783920a07197d6776e9) - [NOTICKET] fix: test the caption hypothesis; ship the signal at weight 0.0 (36a166e1844d186d6cfb8fff9ea070f3dc69b220) - [NOTICKET] fix: cap key-parameter pre-emption in the review queue (Step 2) (4e3a6aefef7024db3ea4b7946fd7771a6c269601) - [NOTICKET] feat: assert on invariants, report a band, classify the genre (Steps 0 + 5) (f1d64b113db0289601806635a9b154201a6127fc) - [NOTICKET] fix: gate spend in cluster units and surface the estimate (Step 6) (cdb5fe82cc5f2893ccbb5e28282e8dc46a27e061) - [NOTICKET] fix: retire escalation…f07443e
-
/feat knowledge management (#20)
- [NOTICKET] docs: knowledge pipeline test integration — context, audited task checklist, DEV_PLAN §0.8 (8e69dc6c638509f4dd7b6775d520fb4aa4efbd3e) - [NOTICKET] docs: knowledge pipeline — reframe kex as prototype, not port target (7cce5ffc9ab88791ac139dbef8e88e124a3d049e) - [NOTICKET] feat(eval): knowledge-extraction gold set, scorer + frozen prototype baseline (60cf4a885ef31a8aa64916f5a70ac5a0e8062c5f) - [NOTICKET] chore: add missing planner and readiness eval results (bd6659b3bf523597e4482b04ab1fcff5e1284d25) - [NOTICKET] feat(knowledge_extraction): free stages — models, seam adapter, filters, cluster, ranking (024c30abd1189119d33508eded334fe5a3ed5011) - [NOTICKET] fix(knowledge_extraction): move runner into the package; fix two ranking defects (72605ff6876a7936ab685d417c766ce820f6214b) - [NOTICKET] feat(knowledge_extraction): span filter — E1 recall 0.8537, matches the frozen baseline (3a016343398753cf730d50548c0e92ff47c6716c) - [NOTICKET] feat(knowledge_extraction): paid extraction …b68816f