# Secrets
.env
.env.backup.*
.env.bak.*

# Python build/cache
__pycache__/
*.pyc
.ruff_cache/
.pytest_cache/
.mypy_cache/
dist/
build/
*.egg-info/
.venv/
.venv-*/
venv/
venv-*/
.coverage*
htmlcov/

# OS
.DS_Store
Thumbs.db

# IDE / Editor local state (not needed in repo)
.cursor/
.vscode/
.idea/
*.swp
*.swo
*~
.project
.pydevproject
.settings/

# Editor / IDE caches (local development only; repo has plugin configs for tests)
.claude/tasks/
.claude/task-list.md
.tasks.json
.playwright-mcp/
.playwright-cli/

# Tessera local state (per-user)
.tessera_cache/
.tessera_lineage/
*.tessera.sqlite*
.serena/
.lore/

# Local-only architecture & internal design notes — NEVER commit
# (User explicitly requested Docs/ stay local-only)
#
# Note: Uppercase Docs/ remains ignored (the user's original convention
# for internal scratch). Lowercase docs/ is the canonical home for
# externally-visible operator + audit + architecture documentation —
# the explicit negation closes G-019 from
# docs/audit/post-remediation/GAP_ANALYSIS.md (the INV-013 finding
# that kept the audit corpus invisible to outside readers on
# case-sensitive filesystems). On macOS the two names resolve to the
# same directory; the negation documents intent for Linux/CI.
Docs/
!docs/
!docs/**
INTERNAL.md
STRATEGY.md
MONETIZATION.md
ROADMAP.md
PRICING.md
CLAUDE.md

# Test artifacts
.router-test-results/
test_results/
*.bak
*.bak.*

# Benchmark artifacts — cache is per-machine, results bloat over time.
# Commit specific results explicitly when they're evidence-worthy.
bench/cache/
bench/results/

# Audit working dir — evidence ledger, batch checkpoints, remediation plan
# (Per audit charter — read-only audit artifacts, never committed)
.audit/

# Release scripts — local-only state, never committed
# Use pre-release-checklist.py to validate before releasing
.release-cache/
.release-state.json
release-notes-draft.md

# Internal documentation (development, reports, demos — never commit)
.internal/
docs-private/
private-docs/
internal-notes.md
*.local.md

# Database files (local testing only)
*.db
*.sqlite
*.sqlite3
!chuzom.db.schema

# Temporary test files
test_*.txt
*.tmp
temp/
tmp/

# Local environment overrides
.env.local
.env.*.local

# macOS specific
.AppleDouble
.LSOverride
._*
.Spotlight-V100
.Trashes
tests/fixtures/routing_expectations.local.yaml
