mirror of
https://github.com/Crosstalk-Solutions/project-nomad.git
synced 2026-05-23 21:05:07 +02:00
Closes the 'zero_chunks warning has no row to attach to' gap surfaced by the 2026-05-14 integration UAT. Before this fix RagService.getStoredFiles returned only file paths that appeared in Qdrant's payload.source — so files with 0 embedded chunks (video-only ZIMs, browse_only opt-outs, ingestions that failed before producing any chunks) silently disappeared from the KB panel's Stored Files table. The fix unions the Qdrant scroll result with the disk-backed file paths recorded in kb_ingest_state. Effect: - lrnselfreliance_en_all_2025-12.zim (3.97 GB video-only ZIM, 0 chunks) now appears in the table, picks up its zero_chunks warning chip - Files in pending_decision under Manual policy show up so the user can see what's waiting for opt-in - Files in browse_only / failed states have a row for future per-card Retry / Re-index actions (forthcoming, blocked on #886) The state-machine query is wrapped in its own try/catch so a transient DB error degrades to the Qdrant-only list rather than 500-ing the whole panel — same defensive posture as the outer try/catch. Stacks on feat/kb-ingest-state-machine (#888) because the union depends on the kb_ingest_state table that PR introduces. Will rebase to rc once #888 merges. Completes the second half of #895's warning surface; the first half (partial_stall) already worked because those files have at least some chunks in Qdrant. |
||
|---|---|---|
| .. | ||
| controllers | ||
| exceptions | ||
| jobs | ||
| middleware | ||
| models | ||
| services | ||
| utils | ||
| validators | ||