# ---- OS / editor ----
.DS_Store
Thumbs.db
.idea/
.vscode/
*.swp
*.swo

# ---- secrets & local config ----
.env
.env.*
!.env.example
*.local.*

# ---- node ----
node_modules/
.next/
.turbo/
out/
coverage/
playwright-report/
test-results/
# Loop-6 Playwright storageState files — session cookies + JWTs that
# the `auth.setup.ts` project writes before chromium/webkit projects
# run. Re-created on every test run; never useful to commit.
apps/frontend/tests/e2e/.auth/
# A5 — Playwright screenshot capture writes here from inside the
# `e2e` profile container (which can't write above its /work mount).
# The operator copies the captures into docs/screenshots/ once happy.
.screenshots-tmp/
.swc/
# pnpm's local content-addressed cache — gets created when running
# `pnpm install` on the host; large, machine-specific, never useful
# to commit.
.pnpm-store/
# Ralph loop runtime state (the loop's lock file).
.claude/scheduled_tasks.lock
# Next.js auto-generates this on every dev/build — committing it
# creates merge noise across branches.
apps/frontend/next-env.d.ts
# TypeScript incremental-build cache — regenerated on every typecheck.
*.tsbuildinfo

# ---- celery beat runtime ----
# Celery writes schedule state next to the working dir on each tick;
# never check it in.
celerybeat-schedule*

# ---- python ----
__pycache__/
*.py[cod]
*$py.class
.venv/
venv/
.eggs/
*.egg-info/
.pytest_cache/
.ruff_cache/
.mypy_cache/
.coverage
.coverage.*
htmlcov/
.python-version

# ---- builds ----
dist/
build/
*.log
*.pid

# ---- data / volumes ----
data/
backups/
.docker/
*.sqlite3

# ---- legacy archives ----
legacy/__pycache__/
legacy/db.sqlite3
legacy/media/

# ---- ralph loop session state ----
.claude/ralph-loop.local.md

# ---- Playwright MCP transient state ----
# Playwright MCP browser tooling writes per-session state here when
# Claude drives the browser; not useful in git.
.playwright-mcp/

# ---- eval-harness reports ----
# Per-run JSONL reports from `python -m app.evals run` / `make eval`.
# Reproducible from the golden datasets + an LLM key; never useful to
# commit. The latest run can be inspected via /admin/evals.
apps/backend/evals/reports/*.jsonl

# ---- legacy wheel ----
Twisted-20.3.0-cp39-cp39-win_amd64.whl

# ---- Playwright recording intermediates ----
apps/frontend/tests/e2e/output/

# ---- Walkthrough recorder verification frames (debug only) ----
tools/recording/frames/
