Self-hosted document library manager with BM25 keyword search and RAG chat with page-level citations
Find a file
pyr0ball 6fc8e7faa6 fix: wire bm25_score through Citation so Natural 20 easter egg fires
Citation dataclass gains bm25_score field populated from the retrieved
chunk. chat.py serializes it. api.ts interface updated to include it.
ChatView passes :bm25-score to CitationPanel so the Nat20 threshold
check in onMounted actually has data to evaluate.
2026-05-04 20:01:20 -07:00
app fix: wire bm25_score through Citation so Natural 20 easter egg fires 2026-05-04 20:01:20 -07:00
config chore: initial pagepiper repo scaffold 2026-05-04 16:54:08 -07:00
docker/web fix(scaffold): split api:8522/web:8521, fix nginx proxy to host.docker.internal 2026-05-04 17:02:41 -07:00
migrations feat: add database schema and migration runner 2026-05-04 17:10:38 -07:00
scripts fix(ingest): batch embedding, connection guard, correct upsert id param, module-level imports in tests 2026-05-04 17:36:18 -07:00
tests fix: T7 quality — SynthesisResult.citations tuple, retriever comments, test assertion 2026-05-04 17:51:22 -07:00
web fix: wire bm25_score through Citation so Natural 20 easter egg fires 2026-05-04 20:01:20 -07:00
.env.example chore: initial pagepiper repo scaffold 2026-05-04 16:54:08 -07:00
.gitignore fix(scaffold): split api:8522/web:8521, fix nginx proxy to host.docker.internal 2026-05-04 17:02:41 -07:00
compose.override.yml.example chore: initial pagepiper repo scaffold 2026-05-04 16:54:08 -07:00
compose.yml fix(scaffold): split api:8522/web:8521, fix nginx proxy to host.docker.internal 2026-05-04 17:02:41 -07:00
Dockerfile fix(scaffold): split api:8522/web:8521, fix nginx proxy to host.docker.internal 2026-05-04 17:02:41 -07:00
environment.yml chore: initial pagepiper repo scaffold 2026-05-04 16:54:08 -07:00
manage.sh fix(scaffold): split api:8522/web:8521, fix nginx proxy to host.docker.internal 2026-05-04 17:02:41 -07:00
pyproject.toml chore: initial pagepiper repo scaffold 2026-05-04 16:54:08 -07:00