-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy path.dockerignore
More file actions
34 lines (32 loc) · 1.18 KB
/
Copy path.dockerignore
File metadata and controls
34 lines (32 loc) · 1.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
**/__pycache__
**/*.pyc
.git
.github
.pytest_cache
.ruff_cache
frontend/node_modules
frontend/.next
# Local build output; Dockerfile.frontend runs its own `npm run build`.
frontend/dist
backend/tests
# Training-only: the generator/trainer scripts, the synthetic training set and
# its EDA plots. Serving reads backend/ml/checkpoints and nothing else under
# backend/ml.
backend/ml/0*.py
backend/ml/data/
backend/data/cached/*/raw
backend/data/cached/*/png
backend/data/cached/*/diff
# The KB source PDFs are NOT excluded, despite being ~57MB and being the input
# to the offline ingest step.
#
# They are also read at serving time. app.py:_index_kb_sources() globs DATA_DIR
# for *.pdf at startup, and GET /api/kb/source/{filename} FileResponses them —
# that is what every citation in an advisory deep-links to ("nat_doc_007_2025.pdf
# p.42" -> /api/kb/source/nat_doc_007_2025.pdf#page=42). Excluding them built an
# image where the index held only the 5 txt/md files, so all 16 PDF citations
# 404'd. Nothing failed loudly: the advisory still rendered, the link just died.
#
# 57MB against a ~3GB torch image is not worth a broken citation trail on a
# product whose pitch is an auditable one.
*.md