# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
.venv/
venv/
env/
ENV/
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
*.egg-info/
*.egg
MANIFEST

# uv
.uv-cache/

# Testing / coverage
.pytest_cache/
.coverage
.coverage.*
htmlcov/
.tox/
.nox/
coverage.xml
*.cover
.hypothesis/

# Type checkers / linters
.mypy_cache/
.dmypy.json
.pyre/
.ruff_cache/

# Environment / secrets
.env
.env.local
.env.*.local
*.pem
*.key
secrets/

# IDE
.vscode/
.idea/
*.swp
*.swo
*~
.DS_Store
Thumbs.db

# Docker / data
postgres-data/
pgdata/
grafana-data/

# Logs
*.log
logs/

# Streamlit
.streamlit/secrets.toml

# Node (for future React dashboard)
node_modules/
.next/
out/
dist-frontend/

# OS / misc
*.bak
*.tmp

# Claude Code session config (personal permission allowlists)
.claude/

# VS Code workspace files (editor-local)
*.code-workspace

# Dogfood sidecar config (carries the API key and live account ids)
sidecar-config.yaml
sidecar-config.*.yaml

# Ad-hoc psql dumps from dogfood/debug sessions. These are query output against
# the LIVE database — strategy names, trade counts, account-scoped ids — and
# nothing in the tree should ever carry that. Keep them out of the repo dir if
# you can; this rule is the backstop for when they land here anyway.
*psql_data_*.txt
*psql_dump_*.txt
*.dump
*.sql.gz
