__pycache__/
*.py[cod]
*$py.class
*.egg-info/
dist/
build/
.eggs/
*.egg
.venv/
venv/
.env
.env.local
# Note: uv.lock IS committed (used by `uv sync --locked` in CI for
# reproducible builds). Other ad-hoc *.lock files (e.g. .dotnet) are
# still ignored.
.pytest_cache/
.ruff_cache/
.mypy_cache/
htmlcov/
.coverage
*.log
.DS_Store

# dlt pipeline state and secrets
.dlt/
*.duckdb
*.duckdb.wal
TRASH/
TRASH-FILES.md

# Internal planning docs (not part of OSS release)
PRD-*.md
TODOS.md
bcapi_cli_prd.md
.planning/

# Codex CLI session metadata — local-only, not part of the repo
.context/
