# --- OS / editor ---
.DS_Store
*.swp
.idea/
.vscode/

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

# --- Node / TS ---
node_modules/
.next/
.turbo/
*.tsbuildinfo
out/

# --- Generated token outputs are committed? No — regenerated in CI ---
packages/tokens/dist/
apps/web/.next/

# --- Local secrets (never committed; enforced by hooks) ---
.env
.env.*
*.pem
*.key

# --- SBOM / scan artifacts (regenerated in CI) ---
sbom*.json
sbom*.xml
trivy-results.*

# Next.js generated
next-env.d.ts

# hypothesis example database
.hypothesis/

# --- Field-capture run artifacts (tools/capture) ---
# Raw rental artifacts (logs, sidecars, ssh session records) stay local; verified
# bundles are published deliberately into apps/console/fixtures/captures/.
captures/runs/

# --- Census index + snapshots (tools/census) ---
# Marketplace inventory is large, host-identifying, and regenerated; keep it local.
captures/census/

# --- Local Phase-0 registry (tools/registry/seed_local.py) ---
# Seeded internal registry (SQLite DB + object store); regenerated from the field bundles.
captures/registry/
