create-ai-project 1.18.1 → 1.18.2
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/.claude/agents-en/code-verifier.md +62 -26
- package/.claude/agents-en/investigator.md +14 -15
- package/.claude/agents-en/prd-creator.md +56 -30
- package/.claude/agents-en/scope-discoverer.md +31 -29
- package/.claude/agents-en/technical-designer-frontend.md +60 -126
- package/.claude/agents-en/technical-designer.md +72 -111
- package/.claude/agents-en/verifier.md +7 -12
- package/.claude/agents-ja/code-verifier.md +62 -26
- package/.claude/agents-ja/investigator.md +14 -15
- package/.claude/agents-ja/prd-creator.md +56 -30
- package/.claude/agents-ja/scope-discoverer.md +31 -29
- package/.claude/agents-ja/technical-designer-frontend.md +67 -134
- package/.claude/agents-ja/technical-designer.md +72 -111
- package/.claude/agents-ja/verifier.md +7 -12
- package/.claude/commands-en/diagnose.md +26 -7
- package/.claude/commands-en/reverse-engineer.md +17 -9
- package/.claude/commands-ja/diagnose.md +26 -7
- package/.claude/commands-ja/reverse-engineer.md +17 -9
- package/CHANGELOG.md +32 -0
- package/package.json +1 -1
|
@@ -34,20 +34,7 @@ Operates in an independent context without CLAUDE.md principles, executing auton
|
|
|
34
34
|
|
|
35
35
|
## Document Creation Criteria
|
|
36
36
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
### Overview
|
|
40
|
-
- ADR: Component architecture changes, state management changes, React patterns changes, external library changes
|
|
41
|
-
- Design Doc: Required for 3+ component/file changes
|
|
42
|
-
- Also required regardless of scale for:
|
|
43
|
-
- Complex state management logic
|
|
44
|
-
- Criteria: Managing 3+ state variables, or coordinating 5+ async operations (API calls)
|
|
45
|
-
- Example: Complex form state management, multiple API call orchestration
|
|
46
|
-
- Introduction of new React patterns or custom hooks
|
|
47
|
-
- Example: New context patterns, custom hook libraries
|
|
48
|
-
|
|
49
|
-
### Important: Assessment Consistency
|
|
50
|
-
- If assessments conflict, include and report the discrepancy in output
|
|
37
|
+
Follow documentation-criteria skill for ADR/Design Doc creation thresholds. If assessments conflict, include and report the discrepancy in output.
|
|
51
38
|
|
|
52
39
|
## Mandatory Process Before Design Doc Creation
|
|
53
40
|
|
|
@@ -77,27 +64,20 @@ Must be performed before Design Doc creation:
|
|
|
77
64
|
- Record adopted decision (use existing/improvement proposal/new implementation) and rationale
|
|
78
65
|
|
|
79
66
|
### Integration Point Analysis【Important】
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
- **Medium**: Using or updating existing component state/context
|
|
95
|
-
- **Low**: Read-only operations, rendering additions, etc.
|
|
96
|
-
|
|
97
|
-
3. **Reflection in Design Doc**
|
|
98
|
-
- Create "## Integration Point Map" section
|
|
99
|
-
- Clarify responsibilities and boundaries at each integration point
|
|
100
|
-
- Define error behavior and loading states at design phase
|
|
67
|
+
Document all integration points with existing components in "## Integration Point Map" section:
|
|
68
|
+
|
|
69
|
+
For each integration point, record:
|
|
70
|
+
- Existing component/hook name
|
|
71
|
+
- Integration method (props/context/hook/event)
|
|
72
|
+
- Impact level: High (data flow change) / Medium (state usage) / Low (read-only)
|
|
73
|
+
- Required test coverage
|
|
74
|
+
|
|
75
|
+
For each integration boundary, define the contract:
|
|
76
|
+
- Input (Props): prop types and required/optional
|
|
77
|
+
- Output (Events): event handler signatures
|
|
78
|
+
- On Error: error boundary, error state, or fallback UI handling
|
|
79
|
+
|
|
80
|
+
Confirm and document conflicts with existing components (naming conventions, prop patterns) at each integration point.
|
|
101
81
|
|
|
102
82
|
### Agreement Checklist【Most Important】
|
|
103
83
|
Must be performed at the beginning of Design Doc creation:
|
|
@@ -160,33 +140,12 @@ Perform before Design Doc creation:
|
|
|
160
140
|
|
|
161
141
|
Common ADR needed when: Technical decisions common to multiple components
|
|
162
142
|
|
|
163
|
-
### Integration Point Specification
|
|
164
|
-
Document integration points with existing components (location, old Props, new Props, switching method).
|
|
165
|
-
|
|
166
143
|
### Data Contracts
|
|
167
144
|
Define Props types and state management contracts between components (types, preconditions, guarantees, error behavior).
|
|
168
145
|
|
|
169
146
|
### State Transitions (When Applicable)
|
|
170
147
|
Document state definitions and transitions for stateful components (loading, error, success states).
|
|
171
148
|
|
|
172
|
-
### Integration Boundary Contracts【Required】
|
|
173
|
-
Define Props types, event handlers, and error handling at component boundaries.
|
|
174
|
-
|
|
175
|
-
```yaml
|
|
176
|
-
Boundary Name: [Component Integration Point]
|
|
177
|
-
Input (Props): [Props type definition]
|
|
178
|
-
Output (Events): [Event handler signatures]
|
|
179
|
-
On Error: [How to handle errors (Error Boundary, error state, etc.)]
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
**Integration Boundaries:**
|
|
183
|
-
- React → DOM: Component rendering to browser DOM
|
|
184
|
-
- Build Tool → Browser: Build output to static files served by browser
|
|
185
|
-
- API → Frontend: External API responses handled by frontend
|
|
186
|
-
- Context → Component: Context values consumed by components
|
|
187
|
-
|
|
188
|
-
Confirm and document conflicts with existing components (naming conventions, Props patterns, etc.) to prevent integration inconsistencies.
|
|
189
|
-
|
|
190
149
|
## UI Spec Integration
|
|
191
150
|
|
|
192
151
|
When a UI Spec exists for the feature (`docs/ui-spec/{feature-name}-ui-spec.md`):
|
|
@@ -202,6 +161,7 @@ When a UI Spec exists for the feature (`docs/ui-spec/{feature-name}-ui-spec.md`)
|
|
|
202
161
|
- **Operation Mode**:
|
|
203
162
|
- `create`: New creation (default)
|
|
204
163
|
- `update`: Update existing document
|
|
164
|
+
- `reverse-engineer`: Document existing frontend architecture as-is (see Reverse-Engineer Mode section)
|
|
205
165
|
|
|
206
166
|
- **Requirements Analysis Results**: Requirements analysis results (scale determination, technical requirements, etc.)
|
|
207
167
|
- **PRD**: PRD document (if exists)
|
|
@@ -223,39 +183,7 @@ When a UI Spec exists for the feature (`docs/ui-spec/{feature-name}-ui-spec.md`)
|
|
|
223
183
|
|
|
224
184
|
## Document Output Format
|
|
225
185
|
|
|
226
|
-
###
|
|
227
|
-
|
|
228
|
-
**Basic Structure**:
|
|
229
|
-
```markdown
|
|
230
|
-
# ADR-XXXX: [Title]
|
|
231
|
-
Status: Proposed
|
|
232
|
-
|
|
233
|
-
## Background
|
|
234
|
-
[Frontend technical challenges and constraints in 1-2 sentences]
|
|
235
|
-
|
|
236
|
-
## Options
|
|
237
|
-
### Option A: [Approach Name]
|
|
238
|
-
- Overview: [Explain in one sentence]
|
|
239
|
-
- Benefits: [2-3 items]
|
|
240
|
-
- Drawbacks: [2-3 items]
|
|
241
|
-
- Effort: X days
|
|
242
|
-
|
|
243
|
-
### Option B/C: [Document similarly]
|
|
244
|
-
|
|
245
|
-
## Comparison
|
|
246
|
-
| Evaluation Axis | Option A | Option B | Option C |
|
|
247
|
-
|-----------------|----------|----------|----------|
|
|
248
|
-
| Implementation Effort | 3 days | 5 days | 2 days |
|
|
249
|
-
| Maintainability | High | Medium | Low |
|
|
250
|
-
| Performance Impact | Low | High | Medium |
|
|
251
|
-
|
|
252
|
-
## Decision
|
|
253
|
-
Option [X] selected. Reason: [2-3 sentences including trade-offs]
|
|
254
|
-
```
|
|
255
|
-
|
|
256
|
-
See `docs/adr/template-en.md` for details.
|
|
257
|
-
|
|
258
|
-
### Normal Document Creation
|
|
186
|
+
### Document Creation
|
|
259
187
|
- **ADR**: `docs/adr/ADR-[4-digit number]-[title].md` (e.g., ADR-0001)
|
|
260
188
|
- **Design Doc**: `docs/design/[feature-name]-design.md`
|
|
261
189
|
- Follow respective templates (`template-en.md`)
|
|
@@ -368,21 +296,32 @@ class Button extends React.Component {
|
|
|
368
296
|
- [ ] Comparison matrix completeness (including performance impact)
|
|
369
297
|
|
|
370
298
|
### Design Doc Checklist
|
|
299
|
+
|
|
300
|
+
**All modes**:
|
|
301
|
+
- [ ] **Standards identification gate completed** (required)
|
|
302
|
+
- [ ] **Code inspection evidence recorded** (required)
|
|
303
|
+
- [ ] **Integration points enumerated with contracts** (required)
|
|
304
|
+
- [ ] **Props type contracts clarified** (required)
|
|
305
|
+
- [ ] Component hierarchy and data flow clearly expressed in diagrams
|
|
306
|
+
|
|
307
|
+
**Create/update mode only** (skip in reverse-engineer mode):
|
|
371
308
|
- [ ] **Agreement checklist completed** (most important)
|
|
372
309
|
- [ ] **Prerequisite common ADRs referenced** (required)
|
|
373
310
|
- [ ] **Change impact map created** (required)
|
|
374
|
-
- [ ] **Integration boundary contracts defined** (required)
|
|
375
|
-
- [ ] **Integration points completely enumerated** (required)
|
|
376
|
-
- [ ] **Props type contracts clarified** (required)
|
|
377
311
|
- [ ] **Component verification procedures for each phase** (required)
|
|
378
312
|
- [ ] Response to requirements and design validity
|
|
379
|
-
- [ ] Test strategy
|
|
380
|
-
- [ ] Component hierarchy and data flow clearly expressed in diagrams
|
|
313
|
+
- [ ] Test strategy and error handling
|
|
381
314
|
- [ ] Props change matrix completeness
|
|
382
315
|
- [ ] Implementation approach selection rationale (vertical/horizontal/hybrid)
|
|
383
|
-
- [ ] Latest
|
|
316
|
+
- [ ] Latest best practices researched and references cited
|
|
384
317
|
- [ ] **Complexity assessment**: complexity_level set; if medium/high, complexity_rationale specifies (1) requirements/ACs, (2) constraints/risks
|
|
385
318
|
|
|
319
|
+
**Reverse-engineer mode only**:
|
|
320
|
+
- [ ] Every architectural claim cites file:line as evidence
|
|
321
|
+
- [ ] Identifiers transcribed exactly from code
|
|
322
|
+
- [ ] Test existence confirmed by Glob
|
|
323
|
+
- [ ] All items from Unit Inventory (if provided) accounted for
|
|
324
|
+
|
|
386
325
|
## Acceptance Criteria Creation Guidelines
|
|
387
326
|
|
|
388
327
|
**Principle**: Set specific, verifiable conditions in browser environment. Avoid ambiguous expressions, document in format convertible to React Testing Library test cases.
|
|
@@ -411,45 +350,40 @@ class Button extends React.Component {
|
|
|
411
350
|
|
|
412
351
|
**Principle**: AC = User-observable behavior in browser verifiable in isolated CI environment
|
|
413
352
|
|
|
414
|
-
## Latest Information Research
|
|
353
|
+
## Latest Information Research
|
|
415
354
|
|
|
416
|
-
|
|
417
|
-
1. **Mandatory Research**:
|
|
418
|
-
- When considering new React library/UI framework introduction
|
|
419
|
-
- When designing performance optimization (code splitting, lazy loading)
|
|
420
|
-
- When designing accessibility implementation (WCAG compliance)
|
|
421
|
-
- When React major version upgrades (e.g., React 18 → 19)
|
|
355
|
+
**When** (create/update mode): New library/framework introduction, performance optimization, accessibility design, major version upgrades.
|
|
422
356
|
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
357
|
+
Check current year with `date +%Y` and include in search queries:
|
|
358
|
+
- `[library] best practices {current_year}`
|
|
359
|
+
- `[lib A] vs [lib B] comparison {current_year}`
|
|
360
|
+
- `[framework] breaking changes migration guide`
|
|
361
|
+
- `[framework] accessibility best practices`
|
|
426
362
|
|
|
427
|
-
|
|
363
|
+
Cite sources in "## References" section at end of ADR/Design Doc with URLs.
|
|
428
364
|
|
|
429
|
-
**
|
|
365
|
+
**Reverse-engineer mode**: Skip. Research is for forward design decisions.
|
|
430
366
|
|
|
431
|
-
|
|
432
|
-
-
|
|
433
|
-
-
|
|
434
|
-
- `React Server Components patterns` (design patterns)
|
|
435
|
-
- `React breaking changes migration guide` (version upgrade)
|
|
436
|
-
- `Tailwind CSS accessibility best practices` (accessibility research)
|
|
437
|
-
- `[library name] official documentation` (official information)
|
|
367
|
+
## Update Mode Operation
|
|
368
|
+
- **ADR**: Update existing file for minor changes, create new file for major changes
|
|
369
|
+
- **Design Doc**: Add revision section and record change history
|
|
438
370
|
|
|
439
|
-
|
|
371
|
+
## Reverse-Engineer Mode (As-Is Frontend Documentation)
|
|
440
372
|
|
|
441
|
-
|
|
373
|
+
Mode for documenting existing frontend architecture as-is. Used when creating Design Docs from existing implementation.
|
|
442
374
|
|
|
443
|
-
|
|
375
|
+
### What to Skip in Reverse-Engineer Mode
|
|
376
|
+
- ADR creation, option comparison, change impact analysis, latest information research, implementation approach decision
|
|
444
377
|
|
|
445
|
-
|
|
446
|
-
## References
|
|
378
|
+
### Reverse-Engineer Mode Execution Steps
|
|
447
379
|
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
380
|
+
1. **Read & Inventory**: Read every Primary File. Record component hierarchy, exported components, hooks, utilities. If Unit Inventory is provided, use it as a completeness baseline — all listed routes, exports, and test files should be accounted for in the Design Doc
|
|
381
|
+
2. **Trace Component Tree**: For each page/screen, read implementation and child components. Record: props, state management, data fetching, conditional rendering — as implemented
|
|
382
|
+
3. **Document Data Flow**: For each data fetching call: record endpoint, params, response shape. For state management: record state shape, update mechanisms, consumers
|
|
383
|
+
4. **Record Contracts**: For each component's interface, record prop names, types, required/optional — as written in code. Use exact identifiers from source
|
|
384
|
+
5. **Identify Test Coverage**: Glob for test files. Record which components have tests. Confirm test existence with Glob before reporting
|
|
452
385
|
|
|
453
|
-
|
|
454
|
-
-
|
|
455
|
-
-
|
|
386
|
+
### Reverse-Engineer Mode Quality Standard
|
|
387
|
+
- Every claim cites file:line as evidence
|
|
388
|
+
- Identifiers transcribed exactly from code
|
|
389
|
+
- Test existence confirmed by Glob, not assumed
|
|
@@ -34,20 +34,7 @@ Operates in an independent context without CLAUDE.md principles, executing auton
|
|
|
34
34
|
|
|
35
35
|
## Document Creation Criteria
|
|
36
36
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
### Overview
|
|
40
|
-
- ADR: Type system changes, data flow changes, architecture changes, external dependency changes
|
|
41
|
-
- Design Doc: Required for 3+ file changes
|
|
42
|
-
- Also required regardless of scale for:
|
|
43
|
-
- Complex implementation logic
|
|
44
|
-
- Criteria: Managing 3+ states, or coordinating 5+ asynchronous processes
|
|
45
|
-
- Example: Complex Redux state management, Promise chains with 5+ links
|
|
46
|
-
- Introduction of new algorithms or patterns
|
|
47
|
-
- Example: New caching strategies, custom routing implementation
|
|
48
|
-
|
|
49
|
-
### Important: Assessment Consistency
|
|
50
|
-
- If assessments conflict, include and report the discrepancy in output
|
|
37
|
+
Follow documentation-criteria skill for ADR/Design Doc creation thresholds. If assessments conflict, include and report the discrepancy in output.
|
|
51
38
|
|
|
52
39
|
## Mandatory Process Before Design Doc Creation
|
|
53
40
|
|
|
@@ -82,7 +69,7 @@ Must be performed before Design Doc creation:
|
|
|
82
69
|
- Search existing code for keywords related to planned functionality
|
|
83
70
|
- Look for implementations with same domain, responsibilities, or configuration patterns
|
|
84
71
|
- Decision and action:
|
|
85
|
-
- Similar functionality found → Use
|
|
72
|
+
- Similar functionality found → Use existing implementation
|
|
86
73
|
- Similar functionality is technical debt → Create ADR improvement proposal before implementation
|
|
87
74
|
- No similar functionality → Proceed with new implementation
|
|
88
75
|
|
|
@@ -108,28 +95,21 @@ When the design introduces or significantly modifies data structures:
|
|
|
108
95
|
- 3+ criteria fail → New structure justified
|
|
109
96
|
- Record decision and rationale in Design Doc
|
|
110
97
|
|
|
111
|
-
### Integration
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
- **Medium**: Using or updating existing data
|
|
127
|
-
- **Low**: Read-only operations, log additions, etc.
|
|
128
|
-
|
|
129
|
-
3. **Reflection in Design Doc**
|
|
130
|
-
- Create "## Integration Point Map" section
|
|
131
|
-
- Clarify responsibilities and boundaries at each integration point
|
|
132
|
-
- Define error behavior at design phase
|
|
98
|
+
### Integration Points【Important】
|
|
99
|
+
Document all integration points with existing systems in "## Integration Point Map" section:
|
|
100
|
+
|
|
101
|
+
For each integration point, record:
|
|
102
|
+
- Existing component and method
|
|
103
|
+
- Integration method (hook/call/data reference)
|
|
104
|
+
- Impact level: High (process flow change) / Medium (data usage) / Low (read-only)
|
|
105
|
+
- Required test coverage
|
|
106
|
+
|
|
107
|
+
For each integration boundary, define the contract:
|
|
108
|
+
- Input: what is received
|
|
109
|
+
- Output: what is returned (specify sync/async)
|
|
110
|
+
- On Error: how errors are handled at this boundary
|
|
111
|
+
|
|
112
|
+
Confirm and document conflicts with existing systems (priority, naming conventions) at each integration point.
|
|
133
113
|
|
|
134
114
|
### Agreement Checklist【Most Important】
|
|
135
115
|
Must be performed at the beginning of Design Doc creation:
|
|
@@ -198,32 +178,18 @@ Perform before Design Doc creation:
|
|
|
198
178
|
|
|
199
179
|
Common ADR needed when: Technical decisions common to multiple components
|
|
200
180
|
|
|
201
|
-
### Integration Point Specification
|
|
202
|
-
Document integration points with existing system (location, old implementation, new implementation, switching method).
|
|
203
|
-
|
|
204
181
|
### Data Contracts
|
|
205
182
|
Define input/output between components (types, preconditions, guarantees, error behavior).
|
|
206
183
|
|
|
207
184
|
### State Transitions (When Applicable)
|
|
208
185
|
Document state definitions and transitions for stateful components.
|
|
209
186
|
|
|
210
|
-
### Integration Boundary Contracts【Required】
|
|
211
|
-
Define input/output, sync/async, and error handling at component boundaries in language-agnostic manner.
|
|
212
|
-
|
|
213
|
-
```yaml
|
|
214
|
-
Boundary Name: [Connection Point]
|
|
215
|
-
Input: [What is received]
|
|
216
|
-
Output: [What is returned (specify sync/async)]
|
|
217
|
-
On Error: [How to handle]
|
|
218
|
-
```
|
|
219
|
-
|
|
220
|
-
Confirm and document conflicts with existing systems (priority, naming conventions, etc.) to prevent integration inconsistencies.
|
|
221
|
-
|
|
222
187
|
## Required Information
|
|
223
188
|
|
|
224
189
|
- **Operation Mode**:
|
|
225
190
|
- `create`: New creation (default)
|
|
226
191
|
- `update`: Update existing document
|
|
192
|
+
- `reverse-engineer`: Document existing architecture as-is (see Reverse-Engineer Mode section)
|
|
227
193
|
|
|
228
194
|
- **Requirements Analysis Results**: Requirements analysis results (scale determination, technical requirements, etc.)
|
|
229
195
|
- **PRD**: PRD document (if exists)
|
|
@@ -244,38 +210,7 @@ Confirm and document conflicts with existing systems (priority, naming conventio
|
|
|
244
210
|
|
|
245
211
|
## Document Output Format
|
|
246
212
|
|
|
247
|
-
###
|
|
248
|
-
|
|
249
|
-
**Basic Structure**:
|
|
250
|
-
```markdown
|
|
251
|
-
# ADR-XXXX: [Title]
|
|
252
|
-
Status: Proposed
|
|
253
|
-
|
|
254
|
-
## Background
|
|
255
|
-
[Technical challenges and constraints in 1-2 sentences]
|
|
256
|
-
|
|
257
|
-
## Options
|
|
258
|
-
### Option A: [Approach Name]
|
|
259
|
-
- Overview: [Explain in one sentence]
|
|
260
|
-
- Benefits: [2-3 items]
|
|
261
|
-
- Drawbacks: [2-3 items]
|
|
262
|
-
- Effort: X days
|
|
263
|
-
|
|
264
|
-
### Option B/C: [Document similarly]
|
|
265
|
-
|
|
266
|
-
## Comparison
|
|
267
|
-
| Evaluation Axis | Option A | Option B | Option C |
|
|
268
|
-
|-----------------|----------|----------|----------|
|
|
269
|
-
| Implementation Effort | 3 days | 5 days | 2 days |
|
|
270
|
-
| Maintainability | High | Medium | Low |
|
|
271
|
-
|
|
272
|
-
## Decision
|
|
273
|
-
Option [X] selected. Reason: [2-3 sentences including trade-offs]
|
|
274
|
-
```
|
|
275
|
-
|
|
276
|
-
See `docs/adr/template-en.md` for details.
|
|
277
|
-
|
|
278
|
-
### Normal Document Creation
|
|
213
|
+
### Document Creation
|
|
279
214
|
- **ADR**: `docs/adr/ADR-[4-digit number]-[title].md` (e.g., ADR-0001)
|
|
280
215
|
- **Design Doc**: `docs/design/[feature-name]-design.md`
|
|
281
216
|
- Follow respective templates (`template-en.md`)
|
|
@@ -286,7 +221,7 @@ See `docs/adr/template-en.md` for details.
|
|
|
286
221
|
Include in ADR: Decisions, rationale, principled guidelines
|
|
287
222
|
Exclude from ADR: Schedules, implementation procedures, specific code
|
|
288
223
|
|
|
289
|
-
Implementation guidelines should only include principles (e.g., "Use dependency injection"
|
|
224
|
+
Implementation guidelines should only include principles (e.g., "Use dependency injection"), not schedules or procedures.
|
|
290
225
|
|
|
291
226
|
## Output Policy
|
|
292
227
|
Execute file output immediately (considered approved at execution).
|
|
@@ -322,32 +257,41 @@ Implementation sample creation checklist:
|
|
|
322
257
|
### ADR Checklist
|
|
323
258
|
- [ ] Problem background and evaluation of multiple options (minimum 3 options)
|
|
324
259
|
- [ ] Clear trade-offs and decision rationale
|
|
325
|
-
- [ ] Principled guidelines for implementation
|
|
260
|
+
- [ ] Principled guidelines for implementation
|
|
326
261
|
- [ ] Consistency with existing architecture
|
|
327
262
|
- [ ] Latest technology research conducted and references cited
|
|
328
263
|
- [ ] **Common ADR relationships specified** (when applicable)
|
|
329
264
|
- [ ] Comparison matrix completeness
|
|
330
265
|
|
|
331
266
|
### Design Doc Checklist
|
|
267
|
+
|
|
268
|
+
**All modes**:
|
|
269
|
+
- [ ] **Standards identification gate completed** (required)
|
|
270
|
+
- [ ] **Code inspection evidence recorded** (required)
|
|
271
|
+
- [ ] **Integration points enumerated with contracts** (required)
|
|
272
|
+
- [ ] **Data contracts clarified** (required)
|
|
273
|
+
- [ ] Architecture and data flow clearly expressed in diagrams
|
|
274
|
+
|
|
275
|
+
**Create/update mode only** (skip in reverse-engineer mode):
|
|
332
276
|
- [ ] **Agreement checklist completed** (most important)
|
|
333
277
|
- [ ] **Prerequisite common ADRs referenced** (required)
|
|
334
278
|
- [ ] **Change impact map created** (required)
|
|
335
|
-
- [ ] **Integration boundary contracts defined** (required)
|
|
336
|
-
- [ ] **Integration points completely enumerated** (required)
|
|
337
|
-
- [ ] **Data contracts clarified** (required)
|
|
338
279
|
- [ ] **E2E verification procedures for each phase** (required)
|
|
339
280
|
- [ ] Response to requirements and design validity
|
|
340
281
|
- [ ] Test strategy and error handling
|
|
341
|
-
- [ ] Architecture and data flow clearly expressed in diagrams
|
|
342
282
|
- [ ] Interface change matrix completeness
|
|
343
283
|
- [ ] Implementation approach selection rationale (vertical/horizontal/hybrid)
|
|
344
284
|
- [ ] Latest best practices researched and references cited
|
|
345
285
|
- [ ] **Complexity assessment**: complexity_level set; if medium/high, complexity_rationale specifies (1) requirements/ACs, (2) constraints/risks
|
|
346
|
-
- [ ] **Standards identification gate completed** (required)
|
|
347
|
-
- [ ] **Code inspection evidence recorded** (required)
|
|
348
286
|
- [ ] **Data representation decision documented** (when new structures introduced)
|
|
349
287
|
- [ ] **Field propagation map included** (when fields cross boundaries)
|
|
350
288
|
|
|
289
|
+
**Reverse-engineer mode only**:
|
|
290
|
+
- [ ] Every architectural claim cites file:line as evidence
|
|
291
|
+
- [ ] Identifiers transcribed exactly from code
|
|
292
|
+
- [ ] Test existence confirmed by Glob
|
|
293
|
+
- [ ] All items from Unit Inventory (if provided) accounted for
|
|
294
|
+
|
|
351
295
|
|
|
352
296
|
## Acceptance Criteria Creation Guidelines
|
|
353
297
|
|
|
@@ -386,27 +330,44 @@ When AC outputs contain any of the following, assign a Property annotation:
|
|
|
386
330
|
|
|
387
331
|
Refer to the template for notation.
|
|
388
332
|
|
|
389
|
-
## Latest Information Research
|
|
333
|
+
## Latest Information Research
|
|
390
334
|
|
|
391
|
-
**
|
|
392
|
-
**Recommended Research**: Before implementing complex algorithms, when considering improvements to existing patterns
|
|
335
|
+
**When** (create/update mode): New technology/library introduction, performance optimization, security design, major version upgrades.
|
|
393
336
|
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
-
|
|
402
|
-
- `[framework name] official documentation` (official docs don't need year)
|
|
403
|
-
|
|
404
|
-
**Citation**: Add "## References" section at end of ADR/Design Doc
|
|
405
|
-
```markdown
|
|
406
|
-
## References
|
|
407
|
-
- [Title](URL) - Brief description of referenced content
|
|
408
|
-
```
|
|
337
|
+
Check current year with `date +%Y` and include in search queries:
|
|
338
|
+
- `[technology] [feature] best practices {current_year}`
|
|
339
|
+
- `[tech A] vs [tech B] comparison {current_year}`
|
|
340
|
+
- `[framework] breaking changes migration guide`
|
|
341
|
+
|
|
342
|
+
Cite sources in "## References" section at end of ADR/Design Doc with URLs.
|
|
343
|
+
|
|
344
|
+
**Reverse-engineer mode**: Skip. Research is for forward design decisions.
|
|
409
345
|
|
|
410
346
|
## Update Mode Operation
|
|
411
347
|
- **ADR**: Update existing file for minor changes, create new file for major changes
|
|
412
|
-
- **Design Doc**: Add revision section and record change history
|
|
348
|
+
- **Design Doc**: Add revision section and record change history
|
|
349
|
+
|
|
350
|
+
## Reverse-Engineer Mode (As-Is Documentation)
|
|
351
|
+
|
|
352
|
+
Mode for documenting existing architecture as-is. Used when creating Design Docs from existing implementation (e.g., in reverse-engineering workflows).
|
|
353
|
+
|
|
354
|
+
### What to Skip in Reverse-Engineer Mode
|
|
355
|
+
- ADR creation (no decisions to record — decisions were already made)
|
|
356
|
+
- Option comparison (no alternatives to evaluate)
|
|
357
|
+
- Change Impact Map (no changes being proposed)
|
|
358
|
+
- Field Propagation Map (no new fields being introduced)
|
|
359
|
+
- Implementation Approach Decision (no implementation strategy to select)
|
|
360
|
+
- Latest Information Research (documenting what exists, not designing something new)
|
|
361
|
+
|
|
362
|
+
### Reverse-Engineer Mode Execution Steps
|
|
363
|
+
|
|
364
|
+
1. **Read & Inventory**: Read every Primary File. Record public interfaces per file. If Unit Inventory is provided, use it as a completeness baseline — all listed routes, exports, and test files should be accounted for in the Design Doc
|
|
365
|
+
2. **Trace Data Flow**: For each entry point, follow calls through services/helpers/data layer. Read each. Record actual flow and error handling as implemented
|
|
366
|
+
3. **Record Contracts**: For each public API/handler, record: parameters, response shape, status codes, middleware/guards — as written in code. For external dependencies: record what is called and returned. Use exact identifiers from source
|
|
367
|
+
4. **Document Data Model**: Read schema/type definitions. Record: field names, types, nullable markers, defaults. For enums: list ALL values
|
|
368
|
+
5. **Identify Test Coverage**: Glob for test files. Record which interfaces have tests. Confirm test existence with Glob before reporting
|
|
369
|
+
|
|
370
|
+
### Reverse-Engineer Mode Quality Standard
|
|
371
|
+
- Every claim cites file:line as evidence
|
|
372
|
+
- Identifiers transcribed exactly from code
|
|
373
|
+
- Test existence confirmed by Glob, not assumed
|
|
@@ -27,13 +27,6 @@ You operate with an independent context that does not apply CLAUDE.md principles
|
|
|
27
27
|
This agent outputs **investigation result verification and conclusion derivation only**.
|
|
28
28
|
Solution derivation is out of scope for this agent.
|
|
29
29
|
|
|
30
|
-
## Core Responsibilities
|
|
31
|
-
|
|
32
|
-
1. **Triangulation Supplementation** - Explore information sources not covered in the investigation to supplement results
|
|
33
|
-
2. **ACH (Analysis of Competing Hypotheses)** - Generate alternative hypotheses beyond those listed in the investigation and evaluate consistency with evidence
|
|
34
|
-
3. **Devil's Advocate** - Assume "the investigation results are wrong" and actively seek refutation
|
|
35
|
-
4. **Conclusion Derivation** - Derive conclusion as "the least refuted hypothesis"
|
|
36
|
-
|
|
37
30
|
## Execution Steps
|
|
38
31
|
|
|
39
32
|
### Step 1: Investigation Results Verification Preparation
|
|
@@ -52,11 +45,13 @@ Solution derivation is out of scope for this agent.
|
|
|
52
45
|
- Verify logical validity of impactAnalysis (without additional searches)
|
|
53
46
|
|
|
54
47
|
### Step 2: Triangulation Supplementation
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
48
|
+
Identify source types NOT covered in the investigation's `investigationSources`, then investigate at least one:
|
|
49
|
+
|
|
50
|
+
1. Review `investigationSources` from the input — list covered source types (code, history, dependency, config, document, external)
|
|
51
|
+
2. For each uncovered source type: perform targeted investigation relevant to the hypotheses
|
|
52
|
+
3. If all source types were covered: investigate a **different code area** or **different configuration** not mentioned in the original investigation
|
|
53
|
+
|
|
54
|
+
Record each supplementary finding with its impact on existing hypotheses.
|
|
60
55
|
|
|
61
56
|
### Step 3: External Information Reinforcement (WebSearch)
|
|
62
57
|
- Official information about hypotheses found in investigation
|