From 5b043734f38ac0a73d89455e9dd741ec7646a892 Mon Sep 17 00:00:00 2001 From: "claude[bot]" <41898282+claude[bot]@users.noreply.github.com> Date: Mon, 17 Nov 2025 12:47:26 +0000 Subject: [PATCH 1/3] Fix: Add blocking checkpoint to Fullstack Engineer code review workflow MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Addresses issue #5 by enhancing the code review workflow section with: - Mandatory STOP checkpoint language before proceeding - Explicit removal of agent discretion to skip reviews - Clear negative/positive examples showing wrong vs right patterns - Stronger psychological framing to prevent rationalization The improvement ensures agents cannot bypass code reviews even for "simple" changes, enforcing the mandatory review requirement with blocking language and concrete examples. Fixes #5 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .../commands/roles/fullstack-engineer.md | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/project-roles/commands/roles/fullstack-engineer.md b/project-roles/commands/roles/fullstack-engineer.md index 94c0e93..b3d10aa 100644 --- a/project-roles/commands/roles/fullstack-engineer.md +++ b/project-roles/commands/roles/fullstack-engineer.md @@ -56,6 +56,32 @@ These READMEs will direct you to all required convention files for both layers b **CRITICAL:** After writing or modifying code on either layer, you MUST use the appropriate reviewer subagent(s). +**🚨 MANDATORY CHECKPOINT - DO NOT PROCEED WITHOUT REVIEW 🚨** + +After completing ANY code changes (backend OR frontend), you must: + +1. **STOP** - Do not mark tasks complete, do not ask what's next, do not move forward +2. **INVOKE REVIEWER** - Use the appropriate reviewer subagent for the code you just wrote +3. **ADDRESS FEEDBACK** - Fix any issues the reviewer identifies +4. **ONLY THEN** - Mark task complete or move to next task + +**You do NOT have discretion to skip this.** Even if changes seem "simple" or "straightforward," invoke the reviewer. + +❌ WRONG - Completing task without review: +``` +[Complete RAS-60 implementation] +✅ RAS-60 complete! Should we move to RAS-61? +``` + +✅ RIGHT - Blocking for review before completion: +``` +[Complete RAS-60 implementation] +Before marking this complete, I need to invoke the backend-reviewer... +[Invoke backend-reviewer] +[Address feedback] +✅ RAS-60 complete! Should we move to RAS-61? +``` + ### When to invoke reviewers: - ✅ After implementing backend changes → use `backend-reviewer` - ✅ After implementing frontend changes → use `frontend-reviewer` From cede04418827a092a707f77bbc6c59dc761cc1c4 Mon Sep 17 00:00:00 2001 From: "claude[bot]" <41898282+claude[bot]@users.noreply.github.com> Date: Mon, 17 Nov 2025 12:51:45 +0000 Subject: [PATCH 2/3] Allow batching multiple changes before code review Changed the code review enforcement to allow agents to make multiple related changes and then have them reviewed together, rather than requiring review after each individual change. Key changes: - Updated checkpoint language to focus on not skipping review entirely - Changed from 'After completing ANY code changes' to 'Before considering work complete' - Added explicit permission: 'You CAN batch changes' - Updated examples to show batching backend + frontend changes before review This maintains the blocking checkpoint to prevent skipping reviews while allowing more efficient bulk review of related changes. Co-authored-by: Rasmus Godske --- .../commands/roles/fullstack-engineer.md | 32 +++++++++++-------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/project-roles/commands/roles/fullstack-engineer.md b/project-roles/commands/roles/fullstack-engineer.md index b3d10aa..3719ee7 100644 --- a/project-roles/commands/roles/fullstack-engineer.md +++ b/project-roles/commands/roles/fullstack-engineer.md @@ -56,29 +56,35 @@ These READMEs will direct you to all required convention files for both layers b **CRITICAL:** After writing or modifying code on either layer, you MUST use the appropriate reviewer subagent(s). -**🚨 MANDATORY CHECKPOINT - DO NOT PROCEED WITHOUT REVIEW 🚨** +**🚨 MANDATORY CHECKPOINT - DO NOT SKIP CODE REVIEW 🚨** -After completing ANY code changes (backend OR frontend), you must: +Before considering your work complete, you must have all code changes reviewed: -1. **STOP** - Do not mark tasks complete, do not ask what's next, do not move forward -2. **INVOKE REVIEWER** - Use the appropriate reviewer subagent for the code you just wrote -3. **ADDRESS FEEDBACK** - Fix any issues the reviewer identifies -4. **ONLY THEN** - Mark task complete or move to next task +1. **COMPLETE YOUR CHANGES** - Make all the code changes needed for the task or feature +2. **STOP BEFORE COMPLETION** - Do not mark tasks complete, do not ask what's next +3. **INVOKE REVIEWER** - Use the appropriate reviewer subagent(s) for all code you wrote +4. **ADDRESS FEEDBACK** - Fix any issues the reviewer identifies +5. **ONLY THEN** - Mark task complete or move to next task -**You do NOT have discretion to skip this.** Even if changes seem "simple" or "straightforward," invoke the reviewer. +**You do NOT have discretion to skip review.** Even if changes seem "simple" or "straightforward," invoke the reviewer. + +**You CAN batch changes:** Make multiple related code changes, then have them all reviewed together before marking complete. ❌ WRONG - Completing task without review: ``` -[Complete RAS-60 implementation] +[Complete RAS-60 implementation - backend and frontend changes] ✅ RAS-60 complete! Should we move to RAS-61? ``` -✅ RIGHT - Blocking for review before completion: +✅ RIGHT - Batching changes then blocking for review: ``` -[Complete RAS-60 implementation] -Before marking this complete, I need to invoke the backend-reviewer... -[Invoke backend-reviewer] -[Address feedback] +[Complete RAS-60 backend implementation] +[Complete RAS-60 frontend implementation] +Now I need to have all changes reviewed before marking complete... +[Invoke backend-reviewer for backend changes] +[Address backend feedback] +[Invoke frontend-reviewer for frontend changes] +[Address frontend feedback] ✅ RAS-60 complete! Should we move to RAS-61? ``` From 818fde325efc45af0f6d03d3ad81af475e2246ca Mon Sep 17 00:00:00 2001 From: "claude[bot]" <41898282+claude[bot]@users.noreply.github.com> Date: Mon, 17 Nov 2025 12:57:00 +0000 Subject: [PATCH 3/3] Apply code review enforcement to backend and frontend engineer roles MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Extended the mandatory code review checkpoint pattern from fullstack-engineer to backend-engineer and frontend-engineer roles for consistency. Changes: - Added "MANDATORY CHECKPOINT - DO NOT SKIP CODE REVIEW" section to both roles - Includes 5-step blocking workflow: Complete changes → Stop → Review → Fix → Complete - Explicitly allows batching multiple changes before review - Provides concrete WRONG/RIGHT examples showing completion without review vs. blocking for review - Removes agent discretion to skip reviews with "You do NOT have discretion" clause This ensures all three engineer roles enforce the same review discipline while allowing efficient batching of related changes. Co-authored-by: Rasmus Godske --- .../commands/roles/backend-engineer.md | 29 +++++++++++++++++++ .../commands/roles/frontend-engineer.md | 29 +++++++++++++++++++ 2 files changed, 58 insertions(+) diff --git a/project-roles/commands/roles/backend-engineer.md b/project-roles/commands/roles/backend-engineer.md index 3898609..a0363f0 100644 --- a/project-roles/commands/roles/backend-engineer.md +++ b/project-roles/commands/roles/backend-engineer.md @@ -50,6 +50,35 @@ This README will direct you to all required convention files based on what you'r **CRITICAL:** After writing or modifying any backend code, you MUST use the `backend-reviewer` subagent for code review. +**🚨 MANDATORY CHECKPOINT - DO NOT SKIP CODE REVIEW 🚨** + +Before considering your work complete, you must have all code changes reviewed: + +1. **COMPLETE YOUR CHANGES** - Make all the code changes needed for the task or feature +2. **STOP BEFORE COMPLETION** - Do not mark tasks complete, do not ask what's next +3. **INVOKE REVIEWER** - Use the backend-reviewer subagent for all code you wrote +4. **ADDRESS FEEDBACK** - Fix any issues the reviewer identifies +5. **ONLY THEN** - Mark task complete or move to next task + +**You do NOT have discretion to skip review.** Even if changes seem "simple" or "straightforward," invoke the reviewer. + +**You CAN batch changes:** Make multiple related code changes, then have them all reviewed together before marking complete. + +❌ WRONG - Completing task without review: +``` +[Complete RAS-60 backend implementation] +✅ RAS-60 complete! Should we move to RAS-61? +``` + +✅ RIGHT - Batching changes then blocking for review: +``` +[Complete RAS-60 backend implementation - models, services, tests] +Now I need to have all changes reviewed before marking complete... +[Invoke backend-reviewer for all backend changes] +[Address feedback] +✅ RAS-60 complete! Should we move to RAS-61? +``` + ### When to invoke the backend-reviewer: - ✅ After implementing any backend feature - ✅ After modifying controllers, models, services, or data classes diff --git a/project-roles/commands/roles/frontend-engineer.md b/project-roles/commands/roles/frontend-engineer.md index 5cb1d09..4e8f7d6 100644 --- a/project-roles/commands/roles/frontend-engineer.md +++ b/project-roles/commands/roles/frontend-engineer.md @@ -52,6 +52,35 @@ This README will direct you to all required convention files based on what you'r **CRITICAL:** After writing or modifying any frontend code, you MUST use the `frontend-reviewer` subagent for code review. +**🚨 MANDATORY CHECKPOINT - DO NOT SKIP CODE REVIEW 🚨** + +Before considering your work complete, you must have all code changes reviewed: + +1. **COMPLETE YOUR CHANGES** - Make all the code changes needed for the task or feature +2. **STOP BEFORE COMPLETION** - Do not mark tasks complete, do not ask what's next +3. **INVOKE REVIEWER** - Use the frontend-reviewer subagent for all code you wrote +4. **ADDRESS FEEDBACK** - Fix any issues the reviewer identifies +5. **ONLY THEN** - Mark task complete or move to next task + +**You do NOT have discretion to skip review.** Even if changes seem "simple" or "straightforward," invoke the reviewer. + +**You CAN batch changes:** Make multiple related code changes, then have them all reviewed together before marking complete. + +❌ WRONG - Completing task without review: +``` +[Complete RAS-60 frontend implementation] +✅ RAS-60 complete! Should we move to RAS-61? +``` + +✅ RIGHT - Batching changes then blocking for review: +``` +[Complete RAS-60 frontend implementation - components, composables, styles] +Now I need to have all changes reviewed before marking complete... +[Invoke frontend-reviewer for all frontend changes] +[Address feedback] +✅ RAS-60 complete! Should we move to RAS-61? +``` + ### When to invoke the frontend-reviewer: - ✅ After implementing any frontend feature - ✅ After creating or modifying Vue components