__pycache__/
*.pyc
.pytest_cache/
.ruff_cache/
.mypy_cache/
*.egg-info/
.venv*/
venv/
build/
dist/
release-notes.md
config.json
config.*.json
!config.example.json
*.sqlite
*.jsonl
.env
.workflow-state.json
# Cached benchmark source PDFs: fetched on first use, never committed. Only the derived
# crops + labels under benchmarks/preprints/ are tracked (self-contained for CI).
benchmarks/preprints/.cache/
benchmarks/public_pdfs/.cache/
# Retrieval question sets name real papers in a personal library: never commit them. Only the
# synthetic fixtures under tests/fixtures/retrieval/ are tracked (tests/test_no_personal_data.py
# enforces both the location and "synthetic": true).
*.questions.json
!tests/fixtures/retrieval/*.questions.json

# Local test evidence; never commit runtime traces or reports.
test-results/
