@anionzo/skill 1.3.0 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CONTRIBUTING.md +2 -1
- package/README.md +29 -10
- package/docs/design-brief.md +19 -13
- package/i18n/CONTRIBUTING.vi.md +2 -1
- package/i18n/README.vi.md +29 -10
- package/i18n/design-brief.vi.md +19 -13
- package/knowledge/global/skill-triggering-rules.md +2 -1
- package/package.json +1 -1
- package/scripts/install-opencode-skills +161 -12
- package/skills/brainstorming/SKILL.md +176 -13
- package/skills/brainstorming/meta.yaml +19 -10
- package/skills/code-review/SKILL.md +214 -19
- package/skills/code-review/meta.yaml +21 -9
- package/skills/commit/SKILL.md +187 -0
- package/skills/commit/examples.md +62 -0
- package/skills/commit/meta.yaml +30 -0
- package/skills/commit/references/output-template.md +14 -0
- package/skills/debug/SKILL.md +252 -0
- package/skills/debug/examples.md +83 -0
- package/skills/debug/meta.yaml +38 -0
- package/skills/debug/references/output-template.md +16 -0
- package/skills/docs-writer/SKILL.md +85 -10
- package/skills/docs-writer/meta.yaml +16 -12
- package/skills/extract/SKILL.md +161 -0
- package/skills/extract/examples.md +47 -0
- package/skills/extract/meta.yaml +27 -0
- package/skills/extract/references/output-template.md +24 -0
- package/skills/feature-delivery/SKILL.md +10 -5
- package/skills/feature-delivery/meta.yaml +5 -0
- package/skills/go-pipeline/SKILL.md +156 -0
- package/skills/go-pipeline/examples.md +56 -0
- package/skills/go-pipeline/meta.yaml +27 -0
- package/skills/go-pipeline/references/output-template.md +17 -0
- package/skills/planning/SKILL.md +128 -17
- package/skills/planning/meta.yaml +15 -6
- package/skills/refactor-safe/SKILL.md +10 -7
- package/skills/repo-onboarding/SKILL.md +11 -7
- package/skills/repo-onboarding/meta.yaml +2 -0
- package/skills/research/SKILL.md +100 -0
- package/skills/research/examples.md +79 -0
- package/skills/research/meta.yaml +27 -0
- package/skills/research/references/output-template.md +23 -0
- package/skills/test-driven-development/SKILL.md +194 -0
- package/skills/test-driven-development/examples.md +77 -0
- package/skills/test-driven-development/meta.yaml +31 -0
- package/skills/test-driven-development/references/.gitkeep +0 -0
- package/skills/test-driven-development/references/output-template.md +31 -0
- package/skills/using-skills/SKILL.md +32 -14
- package/skills/using-skills/examples.md +3 -3
- package/skills/using-skills/meta.yaml +8 -3
- package/skills/verification-before-completion/SKILL.md +127 -13
- package/skills/verification-before-completion/meta.yaml +24 -14
- package/templates/SKILL.md +8 -1
- package/skills/bug-triage/SKILL.md +0 -47
- package/skills/bug-triage/examples.md +0 -68
- package/skills/bug-triage/meta.yaml +0 -25
- package/skills/bug-triage/references/output-template.md +0 -26
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
## Purpose
|
|
4
4
|
|
|
5
|
-
Refine a fuzzy request into a concrete direction
|
|
5
|
+
Refine a fuzzy request into a concrete direction, and when needed, lock decisions into a specification before implementation begins.
|
|
6
|
+
|
|
7
|
+
This skill combines idea exploration with spec-driven development: first clarify what to build, then optionally formalize it into a spec with locked decisions and acceptance criteria.
|
|
6
8
|
|
|
7
9
|
## When To Use
|
|
8
10
|
|
|
@@ -11,35 +13,196 @@ Load this skill when:
|
|
|
11
13
|
- the user has an idea but not a settled approach
|
|
12
14
|
- the scope or success criteria are still unclear
|
|
13
15
|
- multiple reasonable options exist and the tradeoff matters
|
|
14
|
-
-
|
|
16
|
+
- the user says "spec this", "define requirements", or "what should we build"
|
|
17
|
+
- planning a non-trivial feature that has ambiguous requirements
|
|
18
|
+
- multiple stakeholders need to agree on behavior before code is written
|
|
15
19
|
|
|
16
20
|
Skip this skill and go directly to `planning` when the request is already specific: a named feature with clear scope, a known code path, or an explicit task with acceptance criteria.
|
|
17
21
|
|
|
18
|
-
## Workflow
|
|
22
|
+
## Workflow Overview
|
|
23
|
+
|
|
24
|
+
**Phase 0: Explore** — clarify the idea, surface tradeoffs, extract decisions
|
|
25
|
+
**Phase 1: Lock Direction** — lock the recommended direction and scope boundary
|
|
26
|
+
**Phase 2: Write Spec** (optional) — formalize into a spec document with ACs
|
|
27
|
+
**Phase 3: Review** — get user approval before handoff
|
|
28
|
+
|
|
29
|
+
For simple clarifications, Phase 0 + Phase 1 is sufficient. For non-trivial features, continue through Phase 2 + Phase 3.
|
|
30
|
+
|
|
31
|
+
## Phase 0: Explore
|
|
32
|
+
|
|
33
|
+
### 0.1 Scope Assessment
|
|
34
|
+
|
|
35
|
+
Assess the request complexity:
|
|
36
|
+
|
|
37
|
+
- **Quick** — bounded, low ambiguity (rename a flag, tweak a label). Clarify and hand off to `planning`.
|
|
38
|
+
- **Standard** — normal feature with decisions to extract. Run full exploration.
|
|
39
|
+
- **Deep** — cross-cutting, strategic, or highly ambiguous. Run exploration with extra depth, then write a spec.
|
|
40
|
+
|
|
41
|
+
### 0.2 Restate and Question
|
|
19
42
|
|
|
20
43
|
1. Restate the request in plain language.
|
|
21
44
|
2. Ask focused questions that reduce ambiguity quickly.
|
|
22
45
|
3. Surface the most important tradeoffs, not every possible one.
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
46
|
+
|
|
47
|
+
**HARD RULE: Ask ONE question at a time. Wait for the user's response before asking the next.**
|
|
48
|
+
|
|
49
|
+
Rules:
|
|
50
|
+
|
|
51
|
+
- One question per message — never bundled
|
|
52
|
+
- Single-select multiple choice preferred over open-ended
|
|
53
|
+
- Start broad (what/why/for whom) then narrow (constraints, edge cases)
|
|
54
|
+
- 3-4 questions per topic area, then checkpoint:
|
|
55
|
+
> "More questions about [area], or move on? (Remaining: [unvisited areas])"
|
|
56
|
+
|
|
57
|
+
### 0.3 Gray Area Identification
|
|
58
|
+
|
|
59
|
+
Generate 2-4 gray areas — decisions that affect implementation but were not stated in the request. A gray area is a decision that would force the planner to make an assumption without it.
|
|
60
|
+
|
|
61
|
+
Quick codebase scout (grep, not deep analysis):
|
|
62
|
+
|
|
63
|
+
- check what already exists that is related
|
|
64
|
+
- annotate options with what the codebase already has
|
|
65
|
+
|
|
66
|
+
Filter OUT:
|
|
67
|
+
|
|
68
|
+
- technical implementation details (architecture, library choices) — that is `planning`'s job
|
|
69
|
+
- performance concerns
|
|
70
|
+
- scope expansion (new capabilities not requested)
|
|
71
|
+
|
|
72
|
+
### 0.4 Decision Locking
|
|
73
|
+
|
|
74
|
+
After each gray area is resolved, lock the decision:
|
|
75
|
+
|
|
76
|
+
> "Lock decision D[N]: [summary]. Confirmed?"
|
|
77
|
+
|
|
78
|
+
Assign stable IDs: D1, D2, D3... These IDs carry forward into the spec.
|
|
79
|
+
|
|
80
|
+
**Scope creep response** — when the user suggests something outside scope:
|
|
81
|
+
|
|
82
|
+
> "[Feature X] is a new capability — noted as a separate work item. Back to [current area]: [question]"
|
|
83
|
+
|
|
84
|
+
## Phase 1: Lock Direction
|
|
85
|
+
|
|
86
|
+
Summarize the exploration output. All three of the following must be written down explicitly:
|
|
87
|
+
|
|
88
|
+
1. **Recommended direction** — the approach to take
|
|
89
|
+
2. **At least one key constraint** — what limits or shapes the solution
|
|
90
|
+
3. **Scope boundary** — what is in and what is out
|
|
91
|
+
|
|
92
|
+
Present viable options with consequences if multiple exist, but recommend one.
|
|
93
|
+
|
|
94
|
+
**For quick scope:** This is the final output. Hand off to `planning`.
|
|
95
|
+
|
|
96
|
+
**For standard/deep scope:** Continue to Phase 2.
|
|
97
|
+
|
|
98
|
+
## Phase 2: Write Spec (For Standard/Deep Scope)
|
|
99
|
+
|
|
100
|
+
### Spec Document Structure
|
|
101
|
+
|
|
102
|
+
```markdown
|
|
103
|
+
## Overview
|
|
104
|
+
|
|
105
|
+
Brief description of the feature and its purpose.
|
|
106
|
+
|
|
107
|
+
## Locked Decisions
|
|
108
|
+
|
|
109
|
+
- D1: [Decision summary]
|
|
110
|
+
- D2: [Decision summary]
|
|
111
|
+
|
|
112
|
+
## Requirements
|
|
113
|
+
|
|
114
|
+
### Functional Requirements
|
|
115
|
+
- FR-1: [Requirement description]
|
|
116
|
+
- FR-2: [Requirement description]
|
|
117
|
+
|
|
118
|
+
### Non-Functional Requirements
|
|
119
|
+
- NFR-1: [Performance, security, etc.]
|
|
120
|
+
|
|
121
|
+
## Acceptance Criteria
|
|
122
|
+
|
|
123
|
+
- [ ] AC-1: [Testable criterion]
|
|
124
|
+
- [ ] AC-2: [Testable criterion]
|
|
125
|
+
|
|
126
|
+
## Scenarios
|
|
127
|
+
|
|
128
|
+
### Scenario 1: [Happy Path]
|
|
129
|
+
**Given** [context]
|
|
130
|
+
**When** [action]
|
|
131
|
+
**Then** [expected result]
|
|
132
|
+
|
|
133
|
+
### Scenario 2: [Edge Case]
|
|
134
|
+
**Given** [context]
|
|
135
|
+
**When** [action]
|
|
136
|
+
**Then** [expected result]
|
|
137
|
+
|
|
138
|
+
## Open Questions
|
|
139
|
+
|
|
140
|
+
- [ ] Question 1?
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### Spec Quality Rules
|
|
144
|
+
|
|
145
|
+
- Requirements must be testable.
|
|
146
|
+
- Acceptance criteria must be observable outcomes, not vague goals.
|
|
147
|
+
- Scenarios should cover the happy path plus important edge cases.
|
|
148
|
+
- Open questions must stay explicit, not buried in prose.
|
|
149
|
+
- Keep the spec focused on WHAT, not HOW (implementation is `planning`'s job).
|
|
150
|
+
|
|
151
|
+
## Phase 3: Review
|
|
152
|
+
|
|
153
|
+
Present the spec (or the locked direction for quick scope) and ask:
|
|
154
|
+
|
|
155
|
+
> Please review:
|
|
156
|
+
> - **Approve** if complete
|
|
157
|
+
> - **Edit** if you want to modify something
|
|
158
|
+
> - **Add more** if requirements are missing
|
|
159
|
+
|
|
160
|
+
Handle the response:
|
|
161
|
+
|
|
162
|
+
- **Approved** → hand off to next skill
|
|
163
|
+
- **Edit requested** → update, return to review
|
|
164
|
+
- **Add more** → gather additional requirements, update, return to review
|
|
26
165
|
|
|
27
166
|
## Output Format
|
|
28
167
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
-
|
|
34
|
-
-
|
|
168
|
+
Present results using the Shared Output Contract:
|
|
169
|
+
|
|
170
|
+
1. **Goal/Result** — the clarified direction, spec (if written), and approval status
|
|
171
|
+
2. **Key Details:**
|
|
172
|
+
- locked decisions (D1, D2...)
|
|
173
|
+
- scope boundary (in/out)
|
|
174
|
+
- viable options considered with tradeoffs
|
|
175
|
+
- acceptance criteria (if spec written)
|
|
176
|
+
- open questions
|
|
177
|
+
3. **Next Action** — after approval:
|
|
178
|
+
- to review each step: `planning` (with spec reference)
|
|
179
|
+
- to execute everything at once: `go-pipeline` (with spec reference)
|
|
180
|
+
- if requirements still unclear: state what decision is still needed
|
|
35
181
|
|
|
36
182
|
## Red Flags
|
|
37
183
|
|
|
38
184
|
- diving into file-level implementation too early
|
|
39
185
|
- asking many questions that do not change the decision
|
|
186
|
+
- batching multiple questions in one message (HARD RULE violation)
|
|
40
187
|
- presenting vague options with no tradeoff explanation
|
|
41
188
|
- pretending the problem is settled when key constraints are still unknown
|
|
189
|
+
- creating a spec without user input
|
|
190
|
+
- answering your own questions during exploration
|
|
191
|
+
- skipping the review step
|
|
192
|
+
- writing implementation notes instead of requirements
|
|
193
|
+
- leaving ambiguous acceptance criteria that cannot be verified
|
|
194
|
+
|
|
195
|
+
## Checklist
|
|
196
|
+
|
|
197
|
+
- [ ] Scope assessed (quick/standard/deep)
|
|
198
|
+
- [ ] Request restated in plain language
|
|
199
|
+
- [ ] Gray areas identified and explored (one question at a time)
|
|
200
|
+
- [ ] Decisions locked with stable IDs (D1, D2...)
|
|
201
|
+
- [ ] Direction, constraint, and scope boundary documented
|
|
202
|
+
- [ ] Spec written (if standard/deep scope): overview, decisions, requirements, ACs, scenarios
|
|
203
|
+
- [ ] User reviewed and approved
|
|
204
|
+
- [ ] Next step communicated
|
|
42
205
|
|
|
43
206
|
## Done Criteria
|
|
44
207
|
|
|
45
|
-
This skill is complete when
|
|
208
|
+
This skill is complete when the recommended direction, at least one key constraint, and the scope boundary are all written down explicitly. For standard/deep scope, the spec must be approved with acceptance criteria defined. If the spec is not approved, the skill is complete when the user has the information needed to make a decision.
|
|
@@ -1,23 +1,32 @@
|
|
|
1
1
|
name: brainstorming
|
|
2
|
-
version: 0.
|
|
2
|
+
version: 0.2.0
|
|
3
3
|
category: discovery
|
|
4
|
-
summary: Turn a rough idea
|
|
5
|
-
summary_vi: Biến ý tưởng thô
|
|
4
|
+
summary: Turn a rough idea into a concrete direction with locked decisions, optionally formalized into a spec with acceptance criteria.
|
|
5
|
+
summary_vi: "Biến ý tưởng thô thành hướng đi cụ thể với quyết định đã khóa, có thể formalize thành spec với acceptance criteria."
|
|
6
6
|
triggers:
|
|
7
7
|
- help me think this through
|
|
8
8
|
- explore the approach first
|
|
9
9
|
- the request is vague or underspecified
|
|
10
|
+
- spec this feature
|
|
11
|
+
- define requirements
|
|
12
|
+
- what should we build
|
|
13
|
+
- create a specification
|
|
10
14
|
inputs:
|
|
11
|
-
- rough idea
|
|
15
|
+
- rough idea or feature description
|
|
12
16
|
- user goals and constraints
|
|
13
17
|
outputs:
|
|
14
|
-
- clarified goal
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
+
- clarified goal and direction
|
|
19
|
+
- locked decisions (D1, D2...)
|
|
20
|
+
- scope boundary
|
|
21
|
+
- optional spec with requirements and ACs
|
|
22
|
+
- approval status
|
|
18
23
|
constraints:
|
|
19
|
-
-
|
|
20
|
-
-
|
|
24
|
+
- ask one question at a time during exploration
|
|
25
|
+
- do not skip the review step
|
|
26
|
+
- keep focused on WHAT not HOW
|
|
21
27
|
related_skills:
|
|
22
28
|
- using-skills
|
|
23
29
|
- planning
|
|
30
|
+
- research
|
|
31
|
+
- go-pipeline
|
|
32
|
+
- feature-delivery
|
|
@@ -2,40 +2,235 @@
|
|
|
2
2
|
|
|
3
3
|
## Purpose
|
|
4
4
|
|
|
5
|
-
Review code changes with a risk-first
|
|
5
|
+
Review code changes with a risk-first, multi-perspective approach using severity-based triage. When receiving review feedback, evaluate technically before implementing.
|
|
6
|
+
|
|
7
|
+
This skill covers both sides of code review: giving reviews (severity triage, multi-perspective) and receiving reviews (technical evaluation, no performative agreement).
|
|
6
8
|
|
|
7
9
|
## When To Use
|
|
8
10
|
|
|
9
|
-
Load this skill when
|
|
11
|
+
Load this skill when:
|
|
12
|
+
|
|
13
|
+
- the user asks for a review of a diff, PR, commit range, or changed files
|
|
14
|
+
- you are receiving code review feedback and need to evaluate and respond to it
|
|
15
|
+
- the user says "review this", "check this code", or "fix the review comments"
|
|
16
|
+
|
|
17
|
+
## Part 1: Giving Code Reviews
|
|
18
|
+
|
|
19
|
+
### Workflow
|
|
20
|
+
|
|
21
|
+
1. Gather the full set of changes to review.
|
|
22
|
+
2. Review from four perspectives: code quality, architecture, security, completeness.
|
|
23
|
+
3. Triage each finding by severity (P1/P2/P3).
|
|
24
|
+
4. Present findings grouped by severity.
|
|
25
|
+
5. Gate the commit on P1 findings.
|
|
26
|
+
|
|
27
|
+
### Multi-Perspective Review
|
|
28
|
+
|
|
29
|
+
#### Code Quality
|
|
30
|
+
- Readability and simplicity
|
|
31
|
+
- Duplicated logic (DRY)
|
|
32
|
+
- Error handling — missing or swallowed errors
|
|
33
|
+
- Type safety — `any`, unsafe casts, missing types
|
|
34
|
+
- Naming — unclear variable/function names
|
|
35
|
+
|
|
36
|
+
#### Architecture
|
|
37
|
+
- Separation of concerns — business logic in wrong layer
|
|
38
|
+
- Coupling — tight dependencies between unrelated modules
|
|
39
|
+
- API design — consistent patterns, proper methods/status codes
|
|
40
|
+
- File organization — follows project conventions
|
|
41
|
+
|
|
42
|
+
#### Security
|
|
43
|
+
- Input validation — user input sanitized
|
|
44
|
+
- Auth — proper authorization checks
|
|
45
|
+
- Secrets — no hardcoded credentials or tokens
|
|
46
|
+
- Data exposure — sensitive data in logs, responses, or error messages
|
|
47
|
+
|
|
48
|
+
#### Completeness
|
|
49
|
+
- Missing tests for new logic
|
|
50
|
+
- Edge cases not handled
|
|
51
|
+
- Integration gaps — new code not wired into existing flows
|
|
52
|
+
- Stubs or TODOs left in code
|
|
53
|
+
|
|
54
|
+
### Severity Triage
|
|
55
|
+
|
|
56
|
+
| Severity | Criteria | Action |
|
|
57
|
+
|----------|----------|--------|
|
|
58
|
+
| **P1** | Security vuln, data corruption, breaking change, stub shipped | **Blocks commit — must fix** |
|
|
59
|
+
| **P2** | Performance issue, architecture concern, missing test | Should fix before commit |
|
|
60
|
+
| **P3** | Minor cleanup, naming, style | Record for later |
|
|
61
|
+
|
|
62
|
+
**Calibration:** Not everything is P1. Severity inflation wastes time. When in doubt, P2.
|
|
63
|
+
|
|
64
|
+
### Handling Review Results
|
|
65
|
+
|
|
66
|
+
**P1 findings exist — HARD GATE:**
|
|
67
|
+
|
|
68
|
+
Do NOT proceed to commit. Do NOT offer to skip P1.
|
|
69
|
+
|
|
70
|
+
> P1 findings block commit. Fix these first, then re-review.
|
|
71
|
+
|
|
72
|
+
**Only P2/P3:**
|
|
73
|
+
|
|
74
|
+
> No blocking issues. P2 findings recommended.
|
|
75
|
+
> Options: fix P2s now, commit as-is, or create follow-up task for P2s.
|
|
76
|
+
|
|
77
|
+
**Clean:**
|
|
78
|
+
|
|
79
|
+
> Review passed. No issues found. Ready to commit.
|
|
80
|
+
|
|
81
|
+
## Part 2: Receiving Code Reviews
|
|
82
|
+
|
|
83
|
+
### Response Protocol
|
|
84
|
+
|
|
85
|
+
When receiving code review feedback:
|
|
86
|
+
|
|
87
|
+
1. **READ** — complete feedback without reacting
|
|
88
|
+
2. **UNDERSTAND** — restate the requirement in your own words (or ask)
|
|
89
|
+
3. **VERIFY** — check against codebase reality
|
|
90
|
+
4. **EVALUATE** — technically sound for THIS codebase?
|
|
91
|
+
5. **RESPOND** — technical acknowledgment or reasoned pushback
|
|
92
|
+
6. **IMPLEMENT** — one item at a time, test each
|
|
93
|
+
|
|
94
|
+
### No Performative Agreement
|
|
95
|
+
|
|
96
|
+
Do not respond to review feedback with:
|
|
10
97
|
|
|
11
|
-
|
|
98
|
+
- "You're absolutely right!"
|
|
99
|
+
- "Great point!" / "Excellent feedback!"
|
|
100
|
+
- "Thanks for catching that!"
|
|
12
101
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
102
|
+
Instead:
|
|
103
|
+
|
|
104
|
+
- Restate the technical requirement
|
|
105
|
+
- Ask clarifying questions if unclear
|
|
106
|
+
- Push back with technical reasoning if the suggestion is wrong
|
|
107
|
+
- Just fix it — actions speak louder than words
|
|
108
|
+
|
|
109
|
+
When acknowledging correct feedback:
|
|
110
|
+
|
|
111
|
+
- "Fixed. [Brief description of what changed]"
|
|
112
|
+
- "Good catch — [specific issue]. Fixed in [location]."
|
|
113
|
+
- Or just fix it and show the code change.
|
|
114
|
+
|
|
115
|
+
### When to Push Back
|
|
116
|
+
|
|
117
|
+
Push back when:
|
|
118
|
+
|
|
119
|
+
- Suggestion breaks existing functionality
|
|
120
|
+
- Reviewer lacks full context
|
|
121
|
+
- Violates YAGNI (unused feature being "properly implemented")
|
|
122
|
+
- Technically incorrect for this stack
|
|
123
|
+
- Legacy/compatibility reasons exist
|
|
124
|
+
- Conflicts with prior architectural decisions
|
|
125
|
+
|
|
126
|
+
How to push back:
|
|
127
|
+
|
|
128
|
+
- Use technical reasoning, not defensiveness
|
|
129
|
+
- Ask specific questions
|
|
130
|
+
- Reference working tests or code
|
|
131
|
+
- Escalate to the user if it is an architectural disagreement
|
|
132
|
+
|
|
133
|
+
### YAGNI Check for Suggested Features
|
|
134
|
+
|
|
135
|
+
When a reviewer suggests "implementing properly" or adding capabilities:
|
|
136
|
+
|
|
137
|
+
1. Search the codebase for actual usage of the component in question
|
|
138
|
+
2. If unused: suggest removing it (YAGNI)
|
|
139
|
+
3. If used: then implement the improvement
|
|
140
|
+
|
|
141
|
+
### Handling Unclear Feedback
|
|
142
|
+
|
|
143
|
+
If any review item is unclear, STOP — do not implement anything yet. Ask for clarification on all unclear items before proceeding. Items may be related, and partial understanding leads to wrong implementation.
|
|
144
|
+
|
|
145
|
+
### Implementation Order for Multi-Item Feedback
|
|
146
|
+
|
|
147
|
+
1. Clarify anything unclear FIRST
|
|
148
|
+
2. Then implement in this order:
|
|
149
|
+
- Blocking issues (breaks, security)
|
|
150
|
+
- Simple fixes (typos, imports)
|
|
151
|
+
- Complex fixes (refactoring, logic)
|
|
152
|
+
3. Test each fix individually
|
|
153
|
+
4. Verify no regressions
|
|
22
154
|
|
|
23
155
|
## Output Format
|
|
24
156
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
157
|
+
Present results using the Shared Output Contract:
|
|
158
|
+
|
|
159
|
+
**When giving a review:**
|
|
160
|
+
|
|
161
|
+
1. **Goal/Result** — review verdict: PASS, BLOCKED (P1 exists), or PASS with warnings
|
|
162
|
+
2. **Key Details:**
|
|
163
|
+
```
|
|
164
|
+
P1 (blocks commit): X findings
|
|
165
|
+
- [file:line] Description — why it is critical
|
|
166
|
+
|
|
167
|
+
P2 (should fix): X findings
|
|
168
|
+
- [file:line] Description — impact
|
|
169
|
+
|
|
170
|
+
P3 (nice to have): X findings
|
|
171
|
+
- [file:line] Description
|
|
172
|
+
|
|
173
|
+
Verdict: PASS / BLOCKED
|
|
174
|
+
```
|
|
175
|
+
3. **Next Action:**
|
|
176
|
+
- if P1 exists → fix these first, then re-review
|
|
177
|
+
- if only P2/P3 → `commit` (or fix P2s first)
|
|
178
|
+
- if clean → `commit`
|
|
179
|
+
|
|
180
|
+
**When receiving a review:**
|
|
181
|
+
|
|
182
|
+
1. **Goal/Result** — review feedback evaluated and implementation status
|
|
183
|
+
2. **Key Details:**
|
|
184
|
+
- items understood vs. items needing clarification
|
|
185
|
+
- items implemented with verification
|
|
186
|
+
- items pushed back with reasoning
|
|
187
|
+
3. **Next Action:**
|
|
188
|
+
- all items resolved → `verification-before-completion`
|
|
189
|
+
- items remain unclear → waiting for clarification
|
|
29
190
|
|
|
30
191
|
## Red Flags
|
|
31
192
|
|
|
193
|
+
**When giving reviews:**
|
|
32
194
|
- reviewing only the latest file and ignoring related changes
|
|
33
195
|
- focusing on style before correctness
|
|
34
196
|
- vague comments with no user-visible impact
|
|
35
|
-
-
|
|
197
|
+
- severity inflation — calling everything P1
|
|
198
|
+
- approving code with P1 findings
|
|
199
|
+
- not checking the actual diff (reviewing from memory)
|
|
200
|
+
- skipping the security perspective
|
|
201
|
+
|
|
202
|
+
**When receiving reviews:**
|
|
203
|
+
- performative agreement ("Great point!")
|
|
204
|
+
- implementing suggestions without verifying against codebase
|
|
205
|
+
- implementing all items without testing each one
|
|
206
|
+
- avoiding pushback when the suggestion is technically wrong
|
|
207
|
+
- implementing unclear items based on assumptions
|
|
208
|
+
- thanking the reviewer instead of just fixing the issue
|
|
209
|
+
|
|
210
|
+
## Checklist
|
|
211
|
+
|
|
212
|
+
**Giving a review:**
|
|
213
|
+
- [ ] Full diff reviewed
|
|
214
|
+
- [ ] Code quality perspective checked
|
|
215
|
+
- [ ] Architecture perspective checked
|
|
216
|
+
- [ ] Security perspective checked
|
|
217
|
+
- [ ] Completeness perspective checked
|
|
218
|
+
- [ ] Findings triaged by severity (P1/P2/P3)
|
|
219
|
+
- [ ] P1 findings block commit (hard gate)
|
|
220
|
+
- [ ] File and line references included where possible
|
|
221
|
+
- [ ] Next step communicated
|
|
222
|
+
|
|
223
|
+
**Receiving a review:**
|
|
224
|
+
- [ ] All feedback read completely
|
|
225
|
+
- [ ] Each item understood or clarification requested
|
|
226
|
+
- [ ] Suggestions verified against codebase before implementing
|
|
227
|
+
- [ ] Push back applied where technically warranted
|
|
228
|
+
- [ ] Items implemented one at a time
|
|
229
|
+
- [ ] Each fix tested individually
|
|
230
|
+
- [ ] No performative agreement used
|
|
36
231
|
|
|
37
232
|
## Done Criteria
|
|
38
233
|
|
|
39
|
-
|
|
234
|
+
**Giving:** Every finding includes a severity, a file and line reference where possible, and a plain-language statement of user-visible impact. The verdict is clearly stated as PASS or BLOCKED.
|
|
40
235
|
|
|
41
|
-
|
|
236
|
+
**Receiving:** All review items are either implemented with individual verification, pushed back with technical reasoning, or waiting on clarification. No performative agreement was used.
|
|
@@ -1,24 +1,36 @@
|
|
|
1
1
|
name: code-review
|
|
2
|
-
version: 0.
|
|
2
|
+
version: 0.3.0
|
|
3
3
|
category: review
|
|
4
|
-
summary:
|
|
5
|
-
summary_vi: Review
|
|
4
|
+
summary: Multi-perspective code review with P1/P2/P3 severity triage, plus technical evaluation protocol for receiving feedback.
|
|
5
|
+
summary_vi: "Review code đa chiều với P1/P2/P3, cộng protocol đánh giá kỹ thuật khi nhận feedback."
|
|
6
6
|
triggers:
|
|
7
7
|
- review this PR
|
|
8
8
|
- review these changes
|
|
9
9
|
- look for risks before merge
|
|
10
|
+
- check this code
|
|
11
|
+
- fix review comments
|
|
12
|
+
- respond to review feedback
|
|
10
13
|
inputs:
|
|
11
14
|
- diff or changed files
|
|
15
|
+
- review feedback to evaluate
|
|
12
16
|
- relevant tests or docs when needed
|
|
17
|
+
- optional task or spec reference
|
|
13
18
|
outputs:
|
|
14
|
-
- severity-ranked findings
|
|
15
|
-
-
|
|
16
|
-
-
|
|
19
|
+
- severity-ranked findings (P1/P2/P3)
|
|
20
|
+
- review verdict (PASS/BLOCKED)
|
|
21
|
+
- technical evaluation of received feedback
|
|
22
|
+
- items implemented or pushed back
|
|
17
23
|
constraints:
|
|
18
|
-
-
|
|
19
|
-
-
|
|
24
|
+
- P1 blocks commit (hard gate)
|
|
25
|
+
- no performative agreement when receiving feedback
|
|
26
|
+
- verify suggestions against codebase before implementing
|
|
27
|
+
- push back with technical reasoning when warranted
|
|
20
28
|
related_skills:
|
|
21
29
|
- using-skills
|
|
22
|
-
-
|
|
30
|
+
- debug
|
|
31
|
+
- feature-delivery
|
|
32
|
+
- refactor-safe
|
|
23
33
|
- verification-before-completion
|
|
34
|
+
- commit
|
|
24
35
|
- planning
|
|
36
|
+
- test-driven-development
|