# Build context for backend/Dockerfile and app/Dockerfile is the repo root, so this # file decides what is even eligible to be copied into those images. .git/ .gitignore .gitignore.local .claude/ .cursor/ .vscode/ .idea/ # Secrets are passed at runtime via compose `env_file` — never baked into a layer. **/.env **/.env.* !**/.env.example **/__pycache__/ **/*.py[cod] **/*.egg-info/ .venv/ venv/ env/ .mypy_cache/ .pytest_cache/ .ruff_cache/ # Frontend has its own context (./frontend) and its own .dockerignore; nothing of it # belongs in a Python image, and node_modules would dominate the context transfer. frontend/ # Candidate CVs live on the bind mount, not inside an image. backend/inbox/decoded_attachments/ # Ship revision scripts so `DB_AUTO_MIGRATE=true` can `upgrade head` in Docker. # Fileless ORM drift (DB_AUTOGENERATE) still covers leftover model gaps. docs/ tests/ scripts/ tools/ *.md *.log tmp/ temp/ tests/** /backend/tests/**