TDD Development Workflow
Every feature must be test-driven and E2E validated. See e2e/CLAUDE.md for test standards and failure protocol.
Steps
- Pick task →
bd ready/bd show <id> - Create worktree → branch from
developgit worktree add ~/worktrees/property-tracker/<name> -b feature/<name> develop cp "$CLAUDE_PROJECT_DIR/.env.local" ~/worktrees/property-tracker/<name>/.env.local cd ~/worktrees/property-tracker/<name> - Brainstorm → use context7 for research + design exploration
- Plan →
/feature-devor write plan manually following project conventions- For autonomous execution: follow with
/plan-to-epicthen/ralph-execute
- For autonomous execution: follow with
- Write tests FIRST (Red) → unit (Vitest) + E2E (Playwright)
- Spin up env → confirm tests fail (invoke
/env-spinup) - Implement (Green) → use context7, frontend-design, typescript-lsp, supabase as needed
- Validate → full env restart, all tests pass
- Verify →
npm run lint && npx tsc --noEmit && npm run build(lint, types, build) - PR →
gh pr create --base develop→/code-review→gh pr checks --watch→ merge - Cleanup → remove worktree →
bd close <id>→/clear
Writer/Reviewer Pattern (for complex features)
After implementation (step 8), consider opening a second Claude Code session for review:
- Session B reviews with fresh context (no bias toward its own code)
- Use
/code-reviewin Session B - Address feedback in the original session (Session A)