@@ -110,34 +110,49 @@ For each changed file, evaluate:
110110
111111### 5. Classify findings
112112
113- Assign each finding a severity. Use emojis from the project's
113+ Tag each finding with an emoji from the project's
114114[ code review emoji guide] ( https://github.com/erikthedeveloper/code-review-emoji-guide )
115- (referenced in ` CONTRIBUTING.md ` ):
115+ (referenced in ` CONTRIBUTING.md ` ). The emoji communicates ** reviewer intent** —
116+ whether a comment requires action, is a suggestion, or is informational.
116117
117- | Severity | Emoji | Criteria |
118- | ------------ | ----- | ------------------------------------------------------------------ |
119- | P0 — Blocker | 🔧 | Must fix before merge: bugs, data loss, security, CI failures |
120- | P1 — High | 🔧 | Should fix: race conditions, API design issues, missing validation |
121- | P2 — Medium | 🤔 | Recommended: inconsistencies, test gaps, dead code |
122- | P3 — Low | ⛏ | Nice to have: style, minor improvements, documentation |
118+ #### Blocking (merge cannot proceed)
123119
124- Also use 👍 to highlight particularly good code or design decisions.
120+ | Emoji | Tag | Use when |
121+ | ----- | ------------ | ------------------------------------------------------------------------------ |
122+ | 🔧 | ** wrench** | A necessary change: bugs, data loss, security, missing validation, CI failures |
123+ | ❓ | ** question** | A question that must be answered before you can complete the review |
124+
125+ #### Non-blocking (merge can proceed)
126+
127+ | Emoji | Tag | Use when |
128+ | ----- | ---------------- | -------------------------------------------------------------------------- |
129+ | 🤔 | ** thinking** | Thinking aloud — expressing a concern or exploring alternatives |
130+ | ♻️ | ** refactor** | A concrete refactoring suggestion with enough context to act on |
131+ | 🌱 | ** seedling** | A future-focused observation — not for this PR but worth considering |
132+ | 📝 | ** note** | An explanatory comment or context — no action required |
133+ | ⛏ | ** nitpick** | A stylistic or formatting preference — does not require changes |
134+ | 🏕 | ** camp site** | An opportunity to leave the code better than you found it (boy scout rule) |
135+ | 📌 | ** out of scope** | An important concern outside this PR's scope — needs a follow-up issue |
136+ | 👍 | ** praise** | Highlight particularly good code, design, or testing decisions |
125137
126138### 6. Present findings for user approval
127139
128140** Do not submit the review automatically.** Present all findings to the user
129141organized by severity, with:
130142
131- - Severity and title
143+ - Emoji tag and title
132144- File path and line number
133145- Description and suggested fix
134146- Whether it would be an inline comment or body-level finding
135147
148+ Group findings into two sections: ** Blocking** (🔧 / ❓) and ** Non-blocking**
149+ (everything else). This makes it immediately clear what must be addressed.
150+
136151Ask the user which findings to include in the PR review. The user may:
137152
138153- Approve all findings
139154- Exclude specific findings
140- - Adjust severity levels
155+ - Change emoji tags
141156- Edit descriptions
142157- Add additional comments
143158
@@ -149,10 +164,10 @@ After user approval, submit the selected findings as a formal review.
149164
150165#### Determine the review verdict
151166
152- - If any P0 findings are included: ` CHANGES_REQUESTED `
153- - If any P1 findings are included: ` CHANGES_REQUESTED `
154- - If only P2 or below : ` COMMENT `
155- - If no findings: ` APPROVE `
167+ - If any 🔧 (wrench) findings are included: ` REQUEST_CHANGES `
168+ - If any ❓ (question) findings are included: ` COMMENT ` (questions need answers, not change requests)
169+ - If only non-blocking findings (🤔 ♻️ 🌱 📝 ⛏ 🏕 📌 👍) : ` COMMENT `
170+ - If no findings (or only 👍 praise) : ` APPROVE `
156171
157172#### Build inline comments
158173
@@ -165,7 +180,7 @@ comment. Use the file's **current line number** (not diff position) with the
165180 "path" : " crates/common/src/publisher.rs" ,
166181 "line" : 166 ,
167182 "side" : " RIGHT" ,
168- "body" : " 🔧 **Race condition** : Description of the issue...\n\n **Fix**:\n ```rust\n // suggested code\n ```"
183+ "body" : " 🔧 **wrench** — Race condition: Description of the issue...\n\n **Fix**:\n ```rust\n // suggested code\n ```"
169184}
170185````
171186
@@ -179,24 +194,38 @@ concerns, architectural issues, dependency problems) in the review body:
179194
180195<1-2 sentence overview of the changes and overall assessment>
181196
182- ## Findings
197+ ## Blocking
198+
199+ ### 🔧 wrench
200+
201+ - ** Title** : description (file: line )
202+
203+ ### ❓ question
183204
184- ### 🔧 Blockers (P0)
205+ - ** Title** : description (file: line )
206+
207+ ## Non-blocking
208+
209+ ### 🤔 thinking
185210
186211- ** Title** : description (file: line )
187212
188- ### 🔧 High (P1)
213+ ### ♻️ refactor
189214
190215- ** Title** : description (file: line )
191216
192- ### 🤔 Medium (P2)
217+ ### 🌱 seedling / 🏕 camp site / 📌 out of scope
193218
194219- ** Title** : description
195220
196- ### ⛏ Low (P3)
221+ ### ⛏ nitpick
197222
198223- ** Title** : description
199224
225+ ### 👍 praise
226+
227+ - ** Title** : description (file: line )
228+
200229## CI Status
201230
202231- fmt: PASS/FAIL
@@ -205,6 +234,8 @@ concerns, architectural issues, dependency problems) in the review body:
205234- js tests: PASS/FAIL
206235```
207236
237+ Omit any section that has no findings — don't include empty headings.
238+
208239#### Submit the review
209240
210241Use the GitHub API to submit. Handle these known issues:
@@ -242,8 +273,8 @@ Where `comments.json` contains the array of inline comment objects.
242273Output:
243274
244275- The review URL
245- - Total findings by severity (e.g., "2 P0, 3 P1, 5 P2 , 2 P3 ")
246- - Whether the review requested changes or approved
276+ - Total findings by category (e.g., "2 🔧, 1 ❓, 3 🤔 , 2 ⛏, 1 👍 ")
277+ - Whether the review requested changes, commented, or approved
247278- Any CI failures encountered
248279
249280## Rules
0 commit comments