# Python
__pycache__/
*.py[cod]
*.egg-info/
.eggs/
build/
dist/
.venv/
venv/
.pytest_cache/
.mypy_cache/
.ruff_cache/

# Rendered output
*.out.html
/out/
/scratch/

# generated by the verify GitHub Action / verify_changed.py (not source)
verify-report.md

# OS
.DS_Store

# Local secrets (PyPI/npm tokens, etc.) — NEVER commit
.env
.env.*
*.env

# KaTeX is committed (python/src/mtph/vendor/katex/) so a fresh clone renders math offline.
# The packaged schema copy is generated by the build (force-include of spec/schema.json).
python/src/mtph/spec/

# JS port
js/node_modules/
js/dist/

# built playground bundle (regenerated by `npm run build:web` and the Pages workflow)
playground/app.js
playground/app.js.map
playground/mtph-doc.js
playground/mtph-doc.js.map

# internal planning + outreach (kept local, not public)
plans/

# scratch renders + internal feedback docs (kept local)
/*.html
improv/
