Commit History
Yesterday
-
[NOTICKET] fix(retrieval): no page citation for TXT documents
- New helper `citable_page(data)` in retrieval/base.py: the chunk's page to show, or None when there is no page or the file type has no real pages - TXT ingest stores every chunk as page_label 1 (ingest_v2.chunks_from_text), so without this the chip and the answer would always say "p. 1" - Used for the traceability chip label, the chunk labels sent to the answer model, and the planner's document context; PDF and DOCX unchanged - Raw `page_label` stays in the traceability payload; file type falls back to the filename extension - Local tests 12/12 for this change, ruff clean; the 6 failing unit tests fail the same way before this change (stale retriever fake, one planner validator test) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>6f6628d -
[NOTICKET] fix(traceability): show the PDF page on document source chips
- Document sources now carry a display `name`: "<filename>, p. <page>" (filename only when there is no page) - The FE citation chip reads `name`/title/source/id and otherwise shows "Source N", so the page never appeared even though `page_label` was sent - Found in the 11 Nov dry run (handbook answers showed "Source 1–5" with no page) - Existing fields (`filename`, `page_label`, dedupe) unchanged; local tests 3/3, ruff clean Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>2513eb5 -
fix/assembler-comparison-order (#28)
- [NOTICKET] fix(assembler): code-computed order line for small comparison tables (e571677cdeae12700fd82fe0573570974d8ebe2f) - [NOTICKET] fix(assembler): comparisons follow the order line; "we" is the focus (6cc751f62e667f63163d072a812be601e7247d00) - [NOTICKET] feat(query): PA over several periods from summed hours (307bac0a9510fe51be11d51503c4ec0bdb057fb7) - [NOTICKET] docs(plans): ratio measures re-test result (8885f70b04fd144f4e0955b061bfa79ade184f2f) - [NOTICKET] fix(assembler): a top-N list's ends are not the overall highest/lowest (5398bb76c7f6ad36b92e27e8d12a67bce461a40c) - [NOTICKET] fix(planner): convert a tool-side PA average instead of refusing (4e83532e67a904cbd40e5898d7693f7784378c69) - [NOTICKET] fix(assembler): a cut list sorted by a name is "a part", not "the N lowest" (9b0419a416970d4cce1968d87dba9cb184aa8ce2) - [NOTICKET] docs(plans): planner query-shape fixes and audit follow-ups handoff (641b6d4bbdcfb6bc5f5a27c5dce8b97635a6c61e) - [NOTICKET] fix(planner): query-sha…188d2b0
13 days ago
-
planner (#26)
- [NOTICKET] feat(scope): code-owned conversation scope — focus from value lists, follow-up carry, scope line (111ef6b9f94acaae6932782799d7fc3c0364e845) - [NOTICKET] feat(chat): status pings always in English (144494152cfba32196cb64e75b44548a031778cc)e0411e5
-
/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
-
/fix planner count and report (#19)
- /fix planner count question (11de970ff65be9b4f81f773cfb355d3dc57358d7) - [noticket] fix report bug where some answered analysis isnt included in report summary answers (8dec1825cf803ad28f4ff0400b9c373250a7d90a) - [NOTICKET] fix: split report floor from report body; scope analysis reads by user_id (fd4865b20dfc46782706be9aab318f909b9903c3) - [NOTICKET] docs: sync report floor/body + security posture; add review remediation tracker (fc5200c994441ec505ea7a82469da577afe170a5) - [NOTICKET] test: planner eval harness (rule-compliance, --selfcheck/--rescore) (4292522aa3fa3a7af8f933307334cb7e5eb0b377) - [NOTICKET] eval: repair readiness harness; commit intent/help/readiness baselines (08a0a4ad5eacc6c90df22fab5be69f2d33579f29) - [NOTICKET] fix: compiler parity — F-17 fabricated column, F-18 LIKE nulls, F-25 empty in/not_in (8f736f90f1958960a83847d332b45b13fa346168) - [NOTICKET] feat: bound catalog render + blob read; scope charts/traceability; mark degraded seams (0cb7d53cb6f7f7e7b687dd6d9c27…f282b15
-
fix/ check and new chart tool (#16)
- check: table-level column drill + drop misleading "name a table" hint (ef0c7b1c5aa49a244b02f1b5eea15cc77dcf2bcb) - [KM-715] charts: render_chart tool + message_charts store + GET /api/v1/charts + planner viz slice (87cfcf884d923ee4bcd722e0e4ef4d90d7eaedca) - [KM-715] checkpoint: S1a deterministic quality checkpoint between runner and assembler (f3c8de34dc19a573031b67fd4f48dcfbadcdfed8) - [KM-715] docs: sync REPO_STATUS/DEV_PLAN + land SPINE_V2_PLAN (W1/W2 done) (434eacbf2ac8324188ebe5e32775dbc9d2a3f49a) - planner: value-handoff (${tN.col} → list) for tabular lookup/anti-join (54070ac1407b751000e49dfe7f102a2be5ab1ff8) - [KM-715] charts: GET /charts by message_id only + tri-state status marker (b8d15761addf4d499c9631df64e7693aa1d61fa2) - [KM-715] report: embed charts as plotly EDA fences; render_chart counts toward the floor (89db8be6b6f11e86ad0776d2ee07f2306e3b6079) - [KM-715] docs: contract + status deltas for the charts lead-review round (96347ee7c55a4eb39a906409ec214463e25c5e35) - …5a60e93
-
/fix traceability (#15)
- [KM-691] Traceability: add resolved data_used layer for the FE (a646735e33f6ac725d0756a88956b0aec15fe495) - check: don't leak user-scope catalog when analysis catalog missing (c0ba82938383169b41059c4125765db5275885e7) Co-authored-by: Sofhia Az-Zahra <sofhiaazzhr@users.noreply.huggingface.co>32abc41
-
/fix planner and report (#13)
- [KM-644] planner: infeasible plan outcome + entity-ranking few-shots (089b69d9b6111e813307c6afbd3e7613bb823f9d) - [KM-644] harden query path: grouped-select rule, int-date trends, sample decode, trace guard (74ad5261736bda0bd72bccdb41565ea67313993a) - [KM-703] add analyze_merge tool: two-table combine (analytics.combine) (8abf635532366d670367557a3ffa03d42371d831) - [KM-567] planner support for analyze_merge: data_right guard + two-retrieve merge few-shot (a029a843247e6ea4d3c79a4e2c1b7571ba4cda69) - [KM-644] report v2: BQ answers, unresolved/excluded sections, evidence tables + curation/readiness endpoints (4ceb058d85c5a2a289443b9411d2b345027fa226) - [NOTICKET] refactor: mint message_id as UUID to mirror analyses_messages id shape (4253733b6b8db0449a82442a915c732ddd55f528) - [KM-644] report: drop Notes/Unresolved/Method sections from rendered markdown (compact report) (eef6de811a139402c79fd74ad4adfc00cf7aff01) - /edit md file (8198cc188ff05a2798ae2056b90b6e56e1bea87b) Co-authored-by…49b0848
-
/feat traceability (#11)
- [NOTICKET] Fix check skill: reply language + tabular inventory routing (1367f41269cf9ef42fd91f311b24d4edf5885c7b) - [KM-691] Develop traceability (23cc2079989fef931a6e146980fe6bf528ee6e92) - [NOTICKET] Humanize check output: hide UUIDs, add lead-in, list format (2bdda8fc3fc4b4e17b4df7fb53aee5abede45add) - [NOTICKET] check: schema-detail view for column/type questions (9e248d9cc5688d6ee622be523a6bedddf5010995) - [KM-691] Make sources trace-authoritative; drop stream sources (b43ecc77f26c1537cbbfddb6800ec4ff62d16441) - [KM-691] Bound traceability payload + reject contradictory IR filter ranges (db6db73d6ab0c2175447946742038443d67b2f78) - /fix planner can now plan quarter comparison (839e32c8d6d5895029072074ab7aba8bb4fcdb6e) Co-authored-by: Sofhia Az-Zahra <sofhiaazzhr@users.noreply.huggingface.co>f873f92