# Metrik — .gitignore
#
# NOTE: the previous version of this file contained `docs/*`, `.gitignore`, and `.claude`,
# which excluded the entire documentation tree — i.e. every Phase 0/1 deliverable — from
# version control. Replaced deliberately. docs/ is the project's primary output right now.

# --- Build output that must never be committed ---
# ADR 016: diagram sources live in docs/diagrams/*.mmd; rendered images are build output.
docs/static/diagrams/
# ADR 015: generated reference docs are committed on purpose (drift detection), so they
# are NOT ignored here — see docs/reference/.

# --- Python ---
__pycache__/
*.py[cod]
*.so
.Python
build/
dist/
*.egg-info/
.eggs/
.venv/
venv/
env/

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

# uv (ADR 013) — uv.lock IS committed; the cache is not.
.uv/

# --- Node / web (ADR 009) ---
node_modules/
.next/
out/
.turbo/
*.tsbuildinfo
.pnpm-store/

# --- Tauri (ADR 010) ---
apps/desktop/src-tauri/target/
apps/desktop/src-tauri/gen/

# --- Docs site (ADR 015) ---
docs/.docusaurus/
docs/build/

# --- Metrik runtime data ---
# The artifact store and blob store (ADR 006). Content-addressed, machine-generated,
# gigabytes. Never in git.
.metrik/
*.metrik-store/
# Local config may hold API keys (ADR 018).
metrik.local.toml
.env
.env.*
!.env.example

# Model weights and checkpoints — always too large, often license-encumbered (plan.md §5.7).
*.safetensors
*.gguf
*.onnx
*.pt
*.pth
*.bin
# ...except the tiny-random fixtures, which are committed on purpose (ADR 017).
!tests/fixtures/**

# --- Editors and OS ---
.vscode/
!.vscode/extensions.json
.idea/
*.swp
.DS_Store
Thumbs.db
desktop.ini

# --- Local agent/tooling settings ---
.claude/settings.local.json
