project-nomad/admin/app/services
John Cortright 5571e9cd1e feat(rag): add explicit opt-in for ZIM files in the knowledge base
ZIM/Kiwix files were previously auto-discovered and embedded into the AI
knowledge base as soon as they existed on disk, with no way to exclude one
without deleting it entirely. This made browsing content in Kiwix and
including it in AI search the same decision, which isn't what users expect
or consented to.

- Stop auto-discovering ZIM_STORAGE_PATH during KB sync; ZIM files must be
  explicitly added via the Content Manager's new 'Add to Knowledge Base'
  action (embedSingleFile validates directly against disk instead).
- Add a per-file active/inactive toggle (kb_ingest_state.active) so a file
  already indexed can be excluded from/re-included in search instantly,
  without re-embedding.
- searchSimilarDocuments excludes inactive sources via a Qdrant filter.
- Hard-deleting an indexed ZIM now also cleans up its kb_ingest_state row
  and Qdrant points, instead of leaving an orphaned KB entry behind.
- Batch the kb_ingest_state lookup in ZimService.list() into a single
  query instead of one per file.
2026-07-18 15:18:39 -07:00
..
app_auto_update_service.ts feat(supply-depot): opt-in automatic updates for installed apps 2026-06-23 04:46:52 +00:00
auto_update_service.ts feat(supply-depot): opt-in automatic updates for installed apps 2026-06-23 04:46:52 +00:00
benchmark_service.ts fix(docker): reject failed image pulls instead of treating them as success 2026-06-23 04:46:55 +00:00
chat_service.ts fix(chat): prefer selected model for suggestions, fall back to smallest 2026-06-23 04:47:00 +00:00
collection_manifest_service.ts fix(content): narrow Wikipedia reconcile-skip to the managed selection file 2026-06-23 04:46:57 +00:00
collection_update_service.ts feat(content): opt-in automatic updates for installed ZIM & map content 2026-06-23 04:47:01 +00:00
container_registry_service.ts fix(updates): resolve relative registry pagination URL so tag listing doesn't crash (#945) 2026-06-23 04:46:59 +00:00
content_auto_update_service.ts feat(content): opt-in automatic updates for installed ZIM & map content 2026-06-23 04:47:01 +00:00
countries_service.ts feat(Maps): regional map downloads via go-pmtiles extract (#780) 2026-05-20 10:16:00 -07:00
custom_app_guard.ts feat: supply depot 2026-06-23 04:46:45 +00:00
docker_service.ts fix(supply-depot): generate Homebox API key pepper so it stops crash-looping (#1077) 2026-07-18 10:21:14 -07:00
docs_service.ts docs: update in-app docs for v1.33 Supply Depot + auto-updates 2026-06-23 04:47:04 +00:00
download_service.ts fix(downloads): add retry button and resource download link for failed downloads (#1059) 2026-07-18 09:25:42 -07:00
kiwix_catalog_service.ts feat(content): opt-in automatic updates for installed ZIM & map content 2026-06-23 04:47:01 +00:00
kiwix_library_service.ts fix(kiwix): self-heal a missing or corrupt library XML on startup 2026-06-23 04:46:56 +00:00
map_service.ts fix(content): remove superseded curated map/ZIM files when a new version installs 2026-06-23 04:47:01 +00:00
ollama_service.ts fix(AI): stream thinking from /v1 reasoning field + abort on client disconnect (#1078) 2026-07-18 10:33:06 -07:00
queue_service.ts fix(queue): share one ioredis connection across BullMQ queues and workers (#1009) 2026-06-23 04:47:08 +00:00
rag_service.ts feat(rag): add explicit opt-in for ZIM files in the knowledge base 2026-07-18 15:18:39 -07:00
system_service.ts chore: standardize brand name to Project NOMAD, retire backronym 2026-07-18 09:56:54 -07:00
system_update_service.ts feat(system): add opt-in automatic updates for the core NOMAD app 2026-06-23 04:46:51 +00:00
zim_extraction_service.ts chore(KB): filter non-content sections + render tables in ZIM extraction (#1044) 2026-07-18 09:03:53 -07:00
zim_service.ts feat(rag): add explicit opt-in for ZIM files in the knowledge base 2026-07-18 15:18:39 -07:00