# Node / SvelteKit
node_modules/
dist/
.env
.env.*
!.env.example
.brevo-ids.env
frontend/.svelte-kit/
frontend/build/

# Python
backend/venv/
backend/__pycache__/
backend/**/__pycache__/
**/*.pyc
backend/.pytest_cache/

# Coverage reports — regenerated on every test run, must NOT be committed
backend/.coverage
backend/coverage.xml
backend/htmlcov/
backend/pytest.xml
frontend/coverage/
frontend/junit.xml
frontend/.lighthouseci/

# Claude Code local scheduler state
.claude/scheduled_tasks.lock

# Jules workflow — fichier temporaire de corps de PR (généré par Claude, supprimé par us-done.sh)
.github/.us-pr-body.md

# OS
.DS_Store
Thumbs.db

# IDE
.vscode/
.idea/

# Logs
*.log
backend/logs/

# Backup files
*.bak
backend/.venv/

# Secrets & credentials
.brevo.md
client_secret*.json
*.credentials.json
service-account*.json
# MCP registry publish tokens (generated locally by mcp-publisher login)
.mcpregistry_*_token

# Dev test scripts (non-pytest)
backend/test_gam*.py
backend/test_integrated*.py
backend/.venv/

# Local debug dumps (ad-hoc err logs, GH Action log dumps, PSI scripts)
backend_err.txt
frontend_err.txt
gh_run_log.txt
frontend/build_output.txt
frontend/psi_test.js

# Audit 2026-04-27 Sprint 1 cleanup — generated artifacts that should never be tracked
.firebase/
test-results/
tmp/
_tmp/
frontend/playwright-vite*.err
frontend/playwright-vite*.out

# WSDL XML files — external Google API descriptors, regenerable via
# backend/_audits/download_wsdls.sh. JSON catalogues (_enums.json,
# _field_types.json) ARE tracked — tests consume those, not the XML.
backend/_audits/wsdl_v*/*.wsdl

# Coverage audit pipeline — `_audits/coverage-current/` is regenerated on
# every `bash scripts/coverage-audit/run_full_audit.sh` run (~2 MB JSON,
# the live snapshot). Dated snapshots like `_audits/coverage-gam-2026-*/`
# ARE tracked (historical reference feeding Epic specs).
_audits/coverage-current/

# Local scratch space — one-off migration / data-munging scripts that
# fed prior commits (e.g. vitrine i18n refactor). Not part of the build,
# regenerable from source-of-truth files.
scratch/

# Logo / brand mockup test pages — visual experiments, not the source SVG.
logo/test.html

# BMad cross-tool skills install target (Codex, Cursor, Gemini CLI, etc.).
# Regenerated by `npx bmad-method install --tools <ide>` — never commit.
.agents/
.claude/worktrees/

# Claude Code local personal settings (per-user permissions, MCP additions).
# Equipe = .claude/settings.json (versioned). Personal overrides = .local.json.
.claude/settings.local.json

# Local MCP server config — contains secrets (BREVO_MCP_TOKEN, etc.).
# Each dev manages their own MCP servers. Never commit.
.mcp.json

# pnpm lockfile — project uses npm (package-lock.json). pnpm-lock.yaml
# created accidentally by IDE/editor. Never commit.
frontend/pnpm-lock.yaml
pnpm-lock.yaml
mcp-registry-private.pem
