Ralph Development Cycle
This skill executes a single development cycle following the Ralph Wiggum Methodology: pick one task, implement it, verify it, commit it.
Prerequisites
Before starting a cycle:
- •✅
prd.jsonexists with backlog - •✅
progress.mdexists - •✅
.windsurf/rules/tech-stack.mdexists
Cycle Steps
Step 1: Smart Context Selection
Read prd.json and progress.md. Analyze the backlog to determine the most logical next step.
Selection Logic: Do not simply pick the first item. Select the task that:
- •Is currently failing (
passes: false) - •Is unblocked by other tasks (dependencies are met)
- •Makes the most sense to implement given the current state of the code
Announce: "I have selected [task name] because [reason]."
Constraint: PICK ONLY ONE TASK AT A TIME! Do not skip tasks unless blocked. If blocked, document the blocking reason in progress.md.
Step 2: Planning & Journaling
Append a new entry to progress.md with the header "## Working on [Task Name]"
Write a brief plan of execution in the log including:
- •What files will be modified/created
- •What approach you'll take
- •Any potential challenges
- •How you'll verify completion
Constraint: Do not modify code yet.
Step 3: Implementation
Implement the feature described in the selected task using the smallest change that satisfies the acceptance criteria.
Constraints:
- •Work ONLY on this specific task
- •Do not refactor unrelated code
- •Modify only files required for the selected task
- •Adhere to the standards in
.windsurf/rules/tech-stack.md - •Follow the acceptance criteria from
prd.json
Step 4: Verification
Execute the verification command (e.g., npm test, pytest, etc.) relevant to this task.
Reference .windsurf/rules/tech-stack.md for the correct verification commands. If it does not list any, infer minimal verification and document it in progress.md.
Retry Logic:
If the command fails:
- •Read the error output
- •Attempt to fix the code
- •Re-run verification
- •Repeat up to 3 times
If it still fails after 3 tries, document the failure and next hypothesis in progress.md, then stop.
Step 5: Completion & Commit
If verification passes:
- •Update
prd.json: setpassestotruefor this task - •Update
progress.md: Append "Result: Success" - •Run
git add . - •Run
git commit --no-gpg-sign -m "feat: [task description]"
Supporting Resources
Reference these files for guidance:
- •
cycle-checklist.md- Quick reference checklist - •
verification-examples.md- Common verification patterns
Anti-Patterns to Avoid
❌ Do not work on multiple tasks simultaneously ❌ Do not mark task as passing without running verification ❌ Do not commit code that fails tests ❌ Do not refactor unrelated code during implementation