# build files
dist
*.tar.gz
*.whl

# mkdocs build output (local `mkdocs build`; Read the Docs builds its own)
site

# Python cache files
__pycache__
*.pyc

# Coverage reports
.coverage
.coverage.*
htmlcov

# CI metrics artifact (generated by the coverage job, never committed)
metrics.json

# Jupyter Notebook checkpoints
.ipynb_checkpoints

# Virtual environment directories
venv
.env

# Pytest cache
.cache

# mutmut mutation-testing sandbox + cache (make mutation)
mutants
.mutmut-cache

# OS thumbnail files
.DS_Store
Thumbs.db

# IDE files
.idea
.vscode

# other local files
.local
# Only working_docs/README.md is committed; everything else here stays out of git.
working_docs/*
!working_docs/README.md
