# Python
__pycache__/
*.pyc
*.pyo
*.egg-info/
.venv/
venv/

# Build artifacts
build/
dist/

# Relay run artifacts. Ignored globally (scratch runs, /tmp clones, repo-root
# drops), but work-unit plans ARE the durable cross-run state: IMPLEMENT / SHIP
# persist_state() commits plan.json on the base branch, so anything living under
# .workspace/work/<unit>/ is tracked by default (allowlist below).
**/plan.json
**/plan.md
**/plan.*.json
**/plan.schema.json
**/plan.claude.raw.md
**/gh_projection.sh
**/projection.json
!.workspace/work/**/plan.json
!.workspace/work/**/plan.md
!.workspace/work/**/projection.json

# OS / editor
.DS_Store
*.swp
