# Python
__pycache__/
*.py[cod]
*.egg-info/
*.egg
dist/
build/
*.whl

# Testing
.pytest_cache/
.coverage
.coverage.*
coverage.xml
htmlcov/
.tox/
.mypy_cache/
.ruff_cache/
.pyre/
.pytype/

# IDE
.vscode/
.idea/
*.swp
*.swo
*.swn
.history/
*~
*.bak
*.orig

# Local secrets / env
.env
.env.*
!.env.example
.python-version
.tool-versions
*.local

# Editor/AI assistant artefacts that shouldn't ride into the public repo
.aider*

# Roam index
.roam/
.roam.db

# Conductor
.context/

# Entire
.entire/

# OS
.DS_Store
Thumbs.db

# Benchmark artifacts
bench-*.json
bench-repos/

# Virtual environments
venv/
.venv/
.venv_roam/
env/

# Node (benchmark workspaces)
node_modules/

# Windows artifacts
NUL

# Benchmark results (ephemeral)
benchmarks/agent-eval/results/
benchmarks/oss-eval/results/

# Build artifacts in benchmark workspaces
**/build-mingw/
**/cmake-build-*/

# Internal reports (not public)
reports/

# Internal docs (not public)
internal/

# Claude Code internal state (lockfiles, scheduled tasks, etc.)
.claude/

# Ad-hoc dev session artefacts that should never reach the public tree.
# Tracked dev/ files (build_command_reference.py, todo_guard.py, etc.) are
# explicit; everything else stays untracked. Scrub fixture filenames that
# encode session context before they are tracked.
dev/.audit-envelope.json
dev/OVERNIGHT-*.md
dev/COMPETITOR-WATCH-*.md
dev/REPORT-*.md
dev/DOGFOOD-RESULTS-*.md
dev/RELEASE-CHECKLIST.md
dev/CODE-BACKLOG.md
dev/dogfood-batch/
dev/oss-pr-dogfood/
dev/batch-test/
dev/sample-audit-report.md
dev/sample-audit-report.pdf
dev/roam-self-audit-test.md
dev/test-*.diff
dev/test-rules*.yml

# Recheck-agent scratch dirs
.audit-tmp/

# Scratch / temporary — surface inventory dumps + ad-hoc memcheck output
.surface.json
tmp_surface.json
.tmp-memcheck/

# Cloudflare Workers dev cache (landing-page deploy artifacts)
.wrangler/
