# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
.pytest_cache/
.mypy_cache/
.ruff_cache/
.coverage
htmlcov/
.tox/

# Virtual environments
.venv/
venv/
env/
ENV/

# Secrets / env
.env
.env.*
!.env.example
!.env.production
*.pem
*.key

# Frontend
node_modules/
dist/
build/
.next/
.turbo/
.vite/
*.tsbuildinfo

# OS
.DS_Store
Thumbs.db
desktop.ini

# IDE
.idea/
.vscode/
*.swp
*.swo
*~

# Claude Code local overrides
.claude/settings.local.json

# Temp / scratch
/temp/
*.tmp
*.bak
*.log

# Python build artefacts
*.egg-info/
*.egg
wheels/
dist/

# Infra / deploy
*.tfstate
*.tfstate.*
.terraform/
kubeconfig

# Load test results (SP1-14) — CSVs are large and ephemeral
tests/load/results/*.csv
tests/load/results/*.html
# Keep the directory itself tracked
!tests/load/results/.gitkeep

# Perf bench corpus (ADR-028) — regenerated deterministically via:
#   python tests/benchmarks/gen_synthetic_corpus.py --seed=42 --out tests/benchmarks/corpus/synthetic-10k/
tests/benchmarks/corpus/synthetic-10k/doc_*.md
tests/benchmarks/corpus/synthetic-10k/manifest.json
tests/benchmarks/corpus/synthetic-10k/corpus.sha256
!tests/benchmarks/corpus/synthetic-10k/.gitkeep
Selectel/
