# Every directory rule below is anchored with a leading slash so it can only
# match at the repository root. An unanchored `models/` once matched
# `src/miniverl/models/` and silently excluded that package from both git and
# the built wheel; the clean-environment install in .github/workflows/build.yml
# is what caught it.

# Python
__pycache__/
*.py[cod]
*.egg-info/
.eggs/
/build/
/dist/
/site/
/.venv/
/venv/
.python-version

# Tooling caches
.pytest_cache/
.ruff_cache/
.mypy_cache/
.hypothesis/
.coverage
.coverage.*
coverage.xml
htmlcov/

# Run artifacts. Never commit weights, teacher caches or checkpoints.
/runs/
/artifacts/
*.safetensors
*.bin
*.pt
*.ckpt
*.sqlite
*.db

# Local model and dataset caches (root level only)
/.hf-cache/
/hf_cache/
/models/
/checkpoints/
/teacher-cache/

# Exclusive-reservation lock roots created next to bridge outputs.
.miniverl-locks/

# Local working archives. Preserved on disk for provenance, never published.
/.local-archive-*/

# Editors / OS
.vscode/
.idea/
.DS_Store
Thumbs.db

# Committed benchmark results are small, schema-validated JSON and are wanted.
!benchmarks/results/*.json
