speccrew 0.7.74 → 0.7.75
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/.speccrew/skills/speccrew-agentflow-manager/SKILL.md +6 -149
- package/.speccrew/skills/speccrew-deploy-build/SKILL.md +2 -59
- package/.speccrew/skills/speccrew-deploy-migrate/SKILL.md +2 -64
- package/.speccrew/skills/speccrew-deploy-smoke-test/SKILL.md +2 -75
- package/.speccrew/skills/speccrew-deploy-startup/SKILL.md +2 -70
- package/.speccrew/skills/speccrew-dev-backend/SKILL.md +2 -381
- package/.speccrew/skills/speccrew-dev-desktop-electron/SKILL.md +2 -369
- package/.speccrew/skills/speccrew-dev-desktop-tauri/SKILL.md +2 -362
- package/.speccrew/skills/speccrew-dev-frontend/SKILL.md +2 -304
- package/.speccrew/skills/speccrew-dev-mobile/SKILL.md +2 -294
- package/.speccrew/skills/speccrew-dev-review-backend/SKILL.md +2 -204
- package/.speccrew/skills/speccrew-dev-review-desktop/SKILL.md +2 -173
- package/.speccrew/skills/speccrew-dev-review-frontend/SKILL.md +2 -169
- package/.speccrew/skills/speccrew-dev-review-mobile/SKILL.md +2 -173
- package/.speccrew/skills/speccrew-fd-api-contract/SKILL.md +2 -251
- package/.speccrew/skills/speccrew-fd-feature-analyze/SKILL.md +2 -254
- package/.speccrew/skills/speccrew-fd-feature-design/SKILL.md +2 -748
- package/.speccrew/skills/speccrew-feature-designer-orchestration/SKILL.md +6 -105
- package/.speccrew/skills/speccrew-get-timestamp/SKILL.md +6 -33
- package/.speccrew/skills/speccrew-knowledge-bizs-api-analyze/SKILL.md +3 -138
- package/.speccrew/skills/speccrew-knowledge-bizs-api-graph/SKILL.md +3 -283
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/SKILL.md +3 -1014
- package/.speccrew/skills/speccrew-knowledge-bizs-identify-entries/SKILL.md +4 -343
- package/.speccrew/skills/speccrew-knowledge-bizs-init-features/SKILL.md +4 -235
- package/.speccrew/skills/speccrew-knowledge-bizs-module-classify/SKILL.md +6 -72
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze/SKILL.md +3 -534
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-graph/SKILL.md +3 -432
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-style-extract/SKILL.md +4 -391
- package/.speccrew/skills/speccrew-knowledge-graph-query/SKILL.md +3 -98
- package/.speccrew/skills/speccrew-knowledge-graph-write/SKILL.md +3 -92
- package/.speccrew/skills/speccrew-knowledge-module-summarize/SKILL.md +3 -181
- package/.speccrew/skills/speccrew-knowledge-system-summarize/SKILL.md +3 -148
- package/.speccrew/skills/speccrew-knowledge-techs-dispatch/SKILL.md +3 -330
- package/.speccrew/skills/speccrew-knowledge-techs-generate/SKILL.md +6 -159
- package/.speccrew/skills/speccrew-knowledge-techs-generate-conventions/SKILL.md +3 -142
- package/.speccrew/skills/speccrew-knowledge-techs-generate-quality/SKILL.md +3 -568
- package/.speccrew/skills/speccrew-knowledge-techs-generate-ui-style/SKILL.md +3 -180
- package/.speccrew/skills/speccrew-knowledge-techs-index/SKILL.md +3 -154
- package/.speccrew/skills/speccrew-knowledge-techs-init/SKILL.md +3 -176
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/SKILL.md +3 -135
- package/.speccrew/skills/speccrew-pm-knowledge-detector/SKILL.md +4 -88
- package/.speccrew/skills/speccrew-pm-module-initializer/SKILL.md +4 -178
- package/.speccrew/skills/speccrew-pm-module-matcher/SKILL.md +3 -102
- package/.speccrew/skills/speccrew-pm-phase0-init/SKILL.md +5 -78
- package/.speccrew/skills/speccrew-pm-phase1-knowledge-check/SKILL.md +5 -85
- package/.speccrew/skills/speccrew-pm-phase2-complexity-assess/SKILL.md +4 -100
- package/.speccrew/skills/speccrew-pm-phase5-subprd-dispatch/SKILL.md +14 -106
- package/.speccrew/skills/speccrew-pm-phase6-verify-confirm/SKILL.md +7 -84
- package/.speccrew/skills/speccrew-pm-requirement-analysis/SKILL.md +6 -66
- package/.speccrew/skills/speccrew-pm-requirement-assess/SKILL.md +4 -96
- package/.speccrew/skills/speccrew-pm-requirement-clarify/SKILL.md +4 -131
- package/.speccrew/skills/speccrew-pm-requirement-model/SKILL.md +6 -79
- package/.speccrew/skills/speccrew-pm-requirement-simple/SKILL.md +4 -76
- package/.speccrew/skills/speccrew-pm-sub-prd-generate/SKILL.md +3 -281
- package/.speccrew/skills/speccrew-product-manager-orchestration/SKILL.md +6 -165
- package/.speccrew/skills/speccrew-system-deployer-orchestration/SKILL.md +6 -79
- package/.speccrew/skills/speccrew-system-designer-orchestration/SKILL.md +2 -35
- package/.speccrew/skills/speccrew-system-developer-orchestration/SKILL.md +6 -98
- package/.speccrew/skills/speccrew-task-worker-execution/SKILL.md +6 -94
- package/.speccrew/skills/speccrew-team-leader-routing/SKILL.md +6 -79
- package/.speccrew/skills/speccrew-test-case-design/SKILL.md +2 -58
- package/.speccrew/skills/speccrew-test-code-gen/SKILL.md +2 -61
- package/.speccrew/skills/speccrew-test-manager-orchestration/SKILL.md +6 -94
- package/.speccrew/skills/speccrew-test-reporter/SKILL.md +2 -102
- package/.speccrew/skills/speccrew-test-runner/SKILL.md +3 -121
- package/package.json +1 -1
|
@@ -14,297 +14,5 @@ tools: Bash, Edit, Write, Glob, Grep, Read
|
|
|
14
14
|
|
|
15
15
|
<!-- @agentflow: SKILL.xml -->
|
|
16
16
|
|
|
17
|
-
> **REQUIRED**: Before executing this workflow, read the XML workflow specification:
|
|
18
|
-
|
|
19
|
-
---
|
|
20
|
-
|
|
21
|
-
## Workflow
|
|
22
|
-
|
|
23
|
-
### Absolute Constraints
|
|
24
|
-
|
|
25
|
-
> **These rules apply to Task Record document generation. Violation = task failure.**
|
|
26
|
-
|
|
27
|
-
1. **FORBIDDEN: `create_file` for Task Record** — NEVER use `create_file` to write the Task Record document. It MUST be created by copying the template then filling sections with `search_replace`. `create_file` produces truncated output on large files.
|
|
28
|
-
|
|
29
|
-
2. **FORBIDDEN: Full-file rewrite** — NEVER replace the entire Task Record content in a single operation. Always use targeted `search_replace` on specific sections.
|
|
30
|
-
|
|
31
|
-
3. **MANDATORY: Template-first workflow** — Copy template MUST execute before fill sections. Skipping copy and writing content directly is FORBIDDEN.
|
|
32
|
-
|
|
33
|
-
4. **CLARIFICATION: Source code is NOT template-filled** — Actual source code files are written directly based on design blueprints. The template-fill workflow applies ONLY to the Task Record document.
|
|
34
|
-
|
|
35
|
-
## Step 1: Read Design Documents
|
|
36
|
-
|
|
37
|
-
**Input**: Single module design document path `design_doc_path` (provided by upstream system-developer agent).
|
|
38
|
-
|
|
39
|
-
Read in order:
|
|
40
|
-
|
|
41
|
-
1. **Module design document**: `design_doc_path` (single module design document)
|
|
42
|
-
2. **API Contract**: `speccrew-workspace/iterations/{iteration}/03.api-contract/{feature-name}-api-contract.md`
|
|
43
|
-
3. **Task record template**: `speccrew-dev-mobile/templates/TASK-RECORD-TEMPLATE.md`
|
|
44
|
-
|
|
45
|
-
## Step 2: Read Techs Knowledge
|
|
46
|
-
|
|
47
|
-
Read platform-specific development conventions:
|
|
48
|
-
|
|
49
|
-
| Document | Path | Purpose |
|
|
50
|
-
|----------|------|---------|
|
|
51
|
-
| conventions-dev.md | `knowledges/techs/{platform_id}/conventions-dev.md` | Code style, naming, patterns |
|
|
52
|
-
| architecture.md | `knowledges/techs/{platform_id}/architecture.md` | Layer structure, state management |
|
|
53
|
-
| tech-stack.md | `knowledges/techs/{platform_id}/tech-stack.md` | Framework version, dependencies |
|
|
54
|
-
|
|
55
|
-
### Platform-Specific Patterns
|
|
56
|
-
|
|
57
|
-
**Flutter:**
|
|
58
|
-
- Widget patterns (StatelessWidget vs StatefulWidget)
|
|
59
|
-
- State management (Provider, Bloc, Riverpod)
|
|
60
|
-
- Navigation (GoRouter, Navigator)
|
|
61
|
-
- Platform channels for native integration
|
|
62
|
-
|
|
63
|
-
**React Native:**
|
|
64
|
-
- Component patterns (Functional components with Hooks)
|
|
65
|
-
- State management (Redux, MobX, Zustand)
|
|
66
|
-
- Navigation (React Navigation)
|
|
67
|
-
- Native modules bridge
|
|
68
|
-
|
|
69
|
-
## Step 3: Extract Task List
|
|
70
|
-
|
|
71
|
-
Parse module design documents to extract all implementation tasks.
|
|
72
|
-
|
|
73
|
-
### Mobile-Specific Task Types
|
|
74
|
-
|
|
75
|
-
| Task Type | Description | Example |
|
|
76
|
-
|-----------|-------------|---------|
|
|
77
|
-
| Screen/Page | Full screen UI implementation | LoginScreen, ProductDetailPage |
|
|
78
|
-
| Widget/Component | Reusable UI components | ProductCard, SearchBar |
|
|
79
|
-
| Navigation flow | Route configuration | GoRouter config, Stack navigator |
|
|
80
|
-
| State management | Store/provider setup | CartBloc, UserStore |
|
|
81
|
-
| API service | HTTP client integration | ProductService, AuthApi |
|
|
82
|
-
| Local storage | Persistence layer | Hive box, SQLite schema |
|
|
83
|
-
| Platform channel | Native module integration | BiometricAuth, CameraAccess |
|
|
84
|
-
| Asset management | Images, fonts, icons | pubspec.yaml, asset bundling |
|
|
85
|
-
|
|
86
|
-
### Task ID Prefix
|
|
87
|
-
|
|
88
|
-
Use `MB-001`, `MB-002`, etc. for mobile tasks.
|
|
89
|
-
|
|
90
|
-
### Task Checklist Table
|
|
91
|
-
|
|
92
|
-
```markdown
|
|
93
|
-
| Task ID | Module | Description | Target Files | Platform Specific | Offline Support | Dependencies | Status |
|
|
94
|
-
|---------|--------|-------------|--------------|-------------------|-----------------|--------------|--------|
|
|
95
|
-
| MB-001 | Auth | LoginScreen implementation | lib/screens/auth/ | iOS/Android | Yes | - | ⏳ Pending |
|
|
96
|
-
| MB-002 | Auth | BiometricAuth channel | lib/channels/ | iOS (Face ID) / Android (Biometric) | Yes | MB-001 | ⏳ Pending |
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
**Status Values**: ⏳ Pending | 🔄 In Progress | ✅ Complete | 🚫 Blocked
|
|
100
|
-
|
|
101
|
-
**Proceed directly to implementation — no user confirmation required.**
|
|
102
|
-
|
|
103
|
-
## Step 4: Create Task Record File
|
|
104
|
-
|
|
105
|
-
Before writing code, create task record file using template-fill workflow:
|
|
106
|
-
|
|
107
|
-
**Path**: `speccrew-workspace/iterations/{iteration}/04.development/{platform_id}/{module}-task.md`
|
|
108
|
-
|
|
109
|
-
### 4a Copy Template to Task Record Path
|
|
110
|
-
|
|
111
|
-
1. **Read the template file**: `speccrew-dev-mobile/templates/TASK-RECORD-TEMPLATE.md`
|
|
112
|
-
2. **Replace top-level placeholders** (module name, feature name, platform ID, iteration info)
|
|
113
|
-
3. **Create the document** using `create_file`:
|
|
114
|
-
- Target path: `speccrew-workspace/iterations/{iteration}/04.development/{platform_id}/{module}-task.md`
|
|
115
|
-
- Content: Template with top-level placeholders replaced
|
|
116
|
-
4. **Verify**: Document has complete section structure ready for filling
|
|
117
|
-
|
|
118
|
-
### 4b Fill Task Record Sections Using search_replace
|
|
119
|
-
|
|
120
|
-
Fill each section with task checklist and design metadata extracted from input documents.
|
|
121
|
-
|
|
122
|
-
> ⚠️ **CRITICAL CONSTRAINTS:**
|
|
123
|
-
> - **FORBIDDEN: `create_file` to rewrite the entire document**
|
|
124
|
-
> - **MUST use `search_replace` to fill each section individually**
|
|
125
|
-
> - **All section titles MUST be preserved**
|
|
126
|
-
|
|
127
|
-
## Step 5: Execute Task by Task
|
|
128
|
-
|
|
129
|
-
Implement tasks sequentially, following dependencies.
|
|
130
|
-
|
|
131
|
-
### Implementation Principles
|
|
132
|
-
|
|
133
|
-
1. **Follow Design Blueprint**: Strictly follow file paths, naming, structure from design documents
|
|
134
|
-
2. **Direct Code Writing**: Write actual code directly according to design (no template filling for source code)
|
|
135
|
-
3. **Reuse Existing Code**: Use Glob/Grep to find existing widgets/stores before creating new ones
|
|
136
|
-
4. **Platform Conventions**: Follow techs knowledge for naming, patterns, directory structure
|
|
137
|
-
5. **Cross-Platform Consideration**: Handle iOS/Android differences where specified
|
|
138
|
-
|
|
139
|
-
### Local Checks (After Each Task)
|
|
140
|
-
|
|
141
|
-
Before marking task complete, run these checks:
|
|
142
|
-
|
|
143
|
-
| Check | Flutter Command | React Native Command |
|
|
144
|
-
|-------|-----------------|---------------------|
|
|
145
|
-
| Static analysis | `flutter analyze` | `npx react-native lint` |
|
|
146
|
-
| Build verification | `flutter build [ios/android]` | `npx react-native build-ios/build-android` |
|
|
147
|
-
| Unit tests | `flutter test` | `npm test` |
|
|
148
|
-
| Quick verify | App launches on simulator without crash | App launches on emulator without crash |
|
|
149
|
-
|
|
150
|
-
**Check Failure Handling:**
|
|
151
|
-
- Fix issues before marking task complete
|
|
152
|
-
- Complex issues: record in task file "Known Issues" section
|
|
153
|
-
- Design issues: stop and describe problem to user
|
|
154
|
-
|
|
155
|
-
### Blocked Task Diagnosis
|
|
156
|
-
|
|
157
|
-
When task is blocked (build failure, test failure, environment issues):
|
|
158
|
-
|
|
159
|
-
1. **Check Logs**
|
|
160
|
-
- Flutter: `flutter logs` or IDE debug console
|
|
161
|
-
- React Native: Metro bundler output, `adb logcat` (Android), Xcode console (iOS)
|
|
162
|
-
|
|
163
|
-
2. **Verify Dependencies**
|
|
164
|
-
- Flutter: `flutter pub get`, check `pubspec.yaml`
|
|
165
|
-
- React Native: `npm install`, check `package.json`
|
|
166
|
-
|
|
167
|
-
3. **Platform-Specific Issues**
|
|
168
|
-
- iOS: Check Xcode build settings, CocoaPods
|
|
169
|
-
- Android: Check Gradle config, SDK versions
|
|
170
|
-
|
|
171
|
-
4. **Record Diagnosis**
|
|
172
|
-
- In task file: Symptom → Investigation Steps → Root Cause → Solution
|
|
173
|
-
|
|
174
|
-
## Step 6: Record Deviations
|
|
175
|
-
|
|
176
|
-
If actual implementation differs from design, record in task file:
|
|
177
|
-
|
|
178
|
-
```markdown
|
|
179
|
-
### Deviation Notes
|
|
180
|
-
- MB-003: Originally designed with Provider, switched to Riverpod due to [reason]
|
|
181
|
-
- MB-005: Added iOS-specific permission handling not in original design
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
## Step 7: Record Technical Debt
|
|
185
|
-
|
|
186
|
-
If technical debt identified during implementation:
|
|
187
|
-
|
|
188
|
-
**Path**: `speccrew-workspace/iterations/{iteration}/tech-debt/{feature-name}-tech-debt.md`
|
|
189
|
-
|
|
190
|
-
Common mobile technical debts:
|
|
191
|
-
- Platform-specific workarounds
|
|
192
|
-
- Temporary offline sync solutions
|
|
193
|
-
- Missing error handling for edge cases
|
|
194
|
-
- Deferred accessibility features
|
|
195
|
-
- Incomplete test coverage
|
|
196
|
-
|
|
197
|
-
## Step 8: Completion Notification
|
|
198
|
-
|
|
199
|
-
After all tasks complete, update task record and notify user:
|
|
200
|
-
|
|
201
|
-
```
|
|
202
|
-
Mobile Development Complete:
|
|
203
|
-
- Tasks implemented: [X]
|
|
204
|
-
- Deviation records: [Y] (see task file)
|
|
205
|
-
- Technical debt records: [Z] (see tech-debt file)
|
|
206
|
-
- Task record: speccrew-workspace/iterations/{iteration}/04.development/{platform_id}/{module}-task.md
|
|
207
|
-
|
|
208
|
-
Ready for QA Agent acceptance testing.
|
|
209
|
-
```
|
|
210
|
-
|
|
211
|
-
## Task Completion Report
|
|
212
|
-
|
|
213
|
-
At the end of Step 8 (or if the skill fails at any point), output a structured Task Completion Report:
|
|
214
|
-
|
|
215
|
-
### Success Report
|
|
216
|
-
|
|
217
|
-
```
|
|
218
|
-
## Task Completion Report
|
|
219
|
-
- **Status**: SUCCESS
|
|
220
|
-
- **Task ID**: {task_id from dispatch context}
|
|
221
|
-
- **Platform**: {platform_id}
|
|
222
|
-
- **Module**: {module_name}
|
|
223
|
-
- **Output Files**:
|
|
224
|
-
- {file_path_1}
|
|
225
|
-
- {file_path_2}
|
|
226
|
-
- ...
|
|
227
|
-
- **Summary**: Mobile module {module_name} implemented with {X} tasks completed
|
|
228
|
-
```
|
|
229
|
-
|
|
230
|
-
### Failure Report
|
|
231
|
-
|
|
232
|
-
If the skill fails at any step:
|
|
233
|
-
|
|
234
|
-
```
|
|
235
|
-
## Task Completion Report
|
|
236
|
-
- **Status**: FAILED
|
|
237
|
-
- **Task ID**: {task_id from dispatch context}
|
|
238
|
-
- **Platform**: {platform_id}
|
|
239
|
-
- **Module**: {module_name}
|
|
240
|
-
- **Output Files**: {list of partially generated files, or "None"}
|
|
241
|
-
- **Summary**: {one-line description of what was attempted}
|
|
242
|
-
- **Error**: {detailed error description}
|
|
243
|
-
- **Error Category**: {DEPENDENCY_MISSING | BUILD_FAILURE | VALIDATION_ERROR | RUNTIME_ERROR | BLOCKED}
|
|
244
|
-
- **Partial Outputs**: {list of files that were generated before failure, or "None"}
|
|
245
|
-
- **Recovery Hint**: {suggestion for how to resolve and retry}
|
|
246
|
-
```
|
|
247
|
-
|
|
248
|
-
**Error Category Definitions**:
|
|
249
|
-
- `DEPENDENCY_MISSING`: Required Flutter/Dart or npm dependency not available
|
|
250
|
-
- `BUILD_FAILURE`: Flutter build error, Gradle/Xcode compilation failure
|
|
251
|
-
- `VALIDATION_ERROR`: Static analysis error (`flutter analyze`), test failure
|
|
252
|
-
- `RUNTIME_ERROR`: App crash on simulator/emulator, runtime exception
|
|
253
|
-
- `BLOCKED`: Blocked by external dependency, native module issue, or unresolved design issue
|
|
254
|
-
|
|
255
|
-
## OUTPUT EFFICIENCY RULES
|
|
256
|
-
|
|
257
|
-
When executing this skill:
|
|
258
|
-
|
|
259
|
-
1. **Direct-to-File Output**: All implementation code, task records, and helper scripts MUST be written directly to output files
|
|
260
|
-
2. **Minimal Conversation Output**: Only output:
|
|
261
|
-
- Block execution announcements (1 line each): `"[Block XX] Implementing..."`
|
|
262
|
-
- Error messages requiring attention
|
|
263
|
-
- Task Completion Report (final summary)
|
|
264
|
-
3. **FORBIDDEN in conversation**:
|
|
265
|
-
- ❌ Full source code blocks or file contents
|
|
266
|
-
- ❌ Complete implementation listings
|
|
267
|
-
- ❌ Large configuration file dumps
|
|
268
|
-
- ❌ Architecture diagrams displayed in chat
|
|
269
|
-
- ❌ API endpoint listings longer than 3 lines
|
|
270
|
-
4. **Rationale**: Workers run in batch mode (up to 6 concurrent). Displaying code content in conversation wastes context window and provides no value since content goes to files anyway.
|
|
271
|
-
|
|
272
|
-
## ABORT CONDITIONS
|
|
273
|
-
|
|
274
|
-
When script execution or build/compile fails:
|
|
275
|
-
|
|
276
|
-
1. **STOP immediately** — Report: Task ID, error message, failed command
|
|
277
|
-
2. **FORBIDDEN responses on failure**:
|
|
278
|
-
- ❌ DO NOT provide A/B/C alternative options
|
|
279
|
-
- ❌ DO NOT suggest "skip this step and continue"
|
|
280
|
-
- ❌ DO NOT run ad-hoc PowerShell/Bash commands as workaround
|
|
281
|
-
- ❌ DO NOT create temporary scripts to work around the issue
|
|
282
|
-
3. **ONLY correct response**: Report the failure in Task Completion Report with status FAILED and error details
|
|
283
|
-
|
|
284
|
-
# Key Rules
|
|
285
|
-
|
|
286
|
-
| Rule | Description |
|
|
287
|
-
|------|-------------|
|
|
288
|
-
| **Direct Implementation** | Write code directly according to design documents, NOT template filling |
|
|
289
|
-
| **Platform-Specific Handling** | Properly handle iOS/Android differences, permissions, native integrations |
|
|
290
|
-
| **Offline-First Consideration** | Consider offline patterns where applicable |
|
|
291
|
-
| **API Contract READ-ONLY** | API Contract is reference only - do not modify |
|
|
292
|
-
| **Status Markers Consistent** | Use same markers as design: [EXISTING], [MODIFIED], [NEW] |
|
|
293
|
-
| **Follow Techs Conventions** | Naming, directory structure, patterns must follow techs knowledge |
|
|
294
|
-
| **Tech Debt to Unified Path** | Write technical debt to `iterations/{iter}/tech-debt/` directory |
|
|
295
|
-
|
|
296
|
-
# Checklist
|
|
297
|
-
|
|
298
|
-
- [ ] Design document loaded (single module design_doc_path)
|
|
299
|
-
- [ ] Techs knowledge loaded (conventions-dev, architecture, tech-stack)
|
|
300
|
-
- [ ] Task record file created
|
|
301
|
-
- [ ] All design tasks extracted to checklist
|
|
302
|
-
- [ ] Each task has local checks passed (analyze/build/test/quick verify)
|
|
303
|
-
- [ ] Code follows architecture layer conventions
|
|
304
|
-
- [ ] Naming follows conventions-dev.md
|
|
305
|
-
- [ ] Platform-specific features properly handled
|
|
306
|
-
- [ ] Navigation flow matches design
|
|
307
|
-
- [ ] All deviations recorded
|
|
308
|
-
- [ ] Technical debt written to `iterations/{iter}/tech-debt/`
|
|
309
|
-
- [ ] Task record status updated to complete
|
|
310
|
-
- [ ] Task list extracted and recorded in task file
|
|
17
|
+
> **REQUIRED**: Before executing this workflow, read the XML workflow specification: speccrew-workspace/docs/rules/agentflow-spec.md
|
|
18
|
+
> Then read and execute the XML workflow in SKILL.xml block-by-block as the authoritative execution plan.
|
|
@@ -8,213 +8,11 @@ tools: Read, Glob, Grep
|
|
|
8
8
|
|
|
9
9
|
- When speccrew-system-developer dispatches backend code review for a completed module
|
|
10
10
|
- When user requests "Review this backend module's implementation"
|
|
11
|
-
- When user asks "Check if backend code matches design"
|
|
12
11
|
- When incremental review is needed after partial backend implementation
|
|
13
12
|
|
|
14
|
-
# Input Parameters
|
|
15
|
-
|
|
16
|
-
| Parameter | Required | Description |
|
|
17
|
-
|-----------|----------|-------------|
|
|
18
|
-
| `design_doc_path` | Yes | Path to backend module design document |
|
|
19
|
-
| `implementation_report_path` | Yes | Path to backend development report |
|
|
20
|
-
| `source_root` | Yes | Root directory of backend source code |
|
|
21
|
-
| `platform_id` | Yes | Backend platform (backend-spring, backend-nodejs) |
|
|
22
|
-
| `api_contract_path` | No | Path to API contract file for endpoint validation |
|
|
23
|
-
| `task_id` | Yes | Task identifier from dispatch context |
|
|
24
|
-
| `previous_review_path` | No | Path to previous review report for incremental review |
|
|
25
|
-
|
|
26
13
|
## AgentFlow Definition
|
|
27
14
|
|
|
28
15
|
<!-- @agentflow: SKILL.xml -->
|
|
29
16
|
|
|
30
|
-
> **REQUIRED**: Before executing this workflow, read the XML workflow specification:
|
|
31
|
-
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
## Workflow
|
|
35
|
-
|
|
36
|
-
### Absolute Constraints
|
|
37
|
-
|
|
38
|
-
> **Violation = review failure.**
|
|
39
|
-
|
|
40
|
-
1. **READ-ONLY OPERATION** — NEVER modify source code files. Only read and report findings.
|
|
41
|
-
2. **FORBIDDEN: Code fixes** — Do NOT attempt to fix issues. Only document them.
|
|
42
|
-
3. **MANDATORY: Actionable output** — PARTIAL/FAIL results MUST include specific "Re-dispatch Guidance".
|
|
43
|
-
4. **INCREMENTAL REVIEW SUPPORT** — If `previous_review_path` provided, skip items already marked as passed.
|
|
44
|
-
|
|
45
|
-
## Step 1: Load Documents
|
|
46
|
-
|
|
47
|
-
### 1.1 Validate Inputs
|
|
48
|
-
|
|
49
|
-
Verify all required parameters provided. If any missing → Report error, stop.
|
|
50
|
-
|
|
51
|
-
### 1.2 Read Design Document
|
|
52
|
-
|
|
53
|
-
Extract from backend design document:
|
|
54
|
-
|
|
55
|
-
| Section | Information to Extract |
|
|
56
|
-
|---------|------------------------|
|
|
57
|
-
| Module Overview | Module name, responsibilities |
|
|
58
|
-
| File Structure | Required files (DO, VO, Mapper, Service, Controller, Convert, Enums) |
|
|
59
|
-
| Class Specifications | Class names, inheritance requirements, annotations |
|
|
60
|
-
| API Endpoints | Endpoint definitions, HTTP methods, paths |
|
|
61
|
-
| Business Logic | Service methods, transaction requirements |
|
|
62
|
-
|
|
63
|
-
### 1.3 Read Implementation Report
|
|
64
|
-
|
|
65
|
-
Extract: Completed Files, Implementation Status, Known Issues.
|
|
66
|
-
|
|
67
|
-
### 1.4 Read API Contract (if provided)
|
|
68
|
-
|
|
69
|
-
Extract for validation: Endpoint Definitions, Request/Response Schemas, HTTP Methods, Error Codes.
|
|
70
|
-
|
|
71
|
-
## Step 2: File Completeness Check
|
|
72
|
-
|
|
73
|
-
### 2.1 Build Expected File List
|
|
74
|
-
|
|
75
|
-
Backend file categories:
|
|
76
|
-
|
|
77
|
-
| Category | Pattern | Example |
|
|
78
|
-
|----------|---------|---------|
|
|
79
|
-
| Enums | `enums/*.java` | `enums/ErrorCodeConstants.java` |
|
|
80
|
-
| DO | `dal/dataobject/**/*.java` | `dal/dataobject/employee/EmployeeDO.java` |
|
|
81
|
-
| VO | `controller/admin/vo/**/*.java` | `controller/admin/vo/EmployeeRespVO.java` |
|
|
82
|
-
| Mapper | `dal/mapper/**/*.java` | `dal/mapper/employee/EmployeeMapper.java` |
|
|
83
|
-
| Service | `service/**/*.java` | `service/employee/EmployeeService.java` |
|
|
84
|
-
| Controller | `controller/admin/**/*.java` | `controller/admin/employee/EmployeeController.java` |
|
|
85
|
-
| Convert | `convert/**/*.java` | `convert/employee/EmployeeConvert.java` |
|
|
86
|
-
|
|
87
|
-
### 2.2 Scan Actual Files
|
|
88
|
-
|
|
89
|
-
Use `Glob` to scan `source_root` for implemented files.
|
|
90
|
-
|
|
91
|
-
### 2.3 Calculate Completeness
|
|
92
|
-
|
|
93
|
-
Generate completeness matrix and percentage: `completeness_pct = (created / required) * 100`
|
|
94
|
-
|
|
95
|
-
## Step 3: Backend-Specific Compliance Check
|
|
96
|
-
|
|
97
|
-
### 3.1 DO/VO/DTO Compliance
|
|
98
|
-
|
|
99
|
-
| Check | Rule | Severity |
|
|
100
|
-
|-------|------|----------|
|
|
101
|
-
| Base Class | Must extend correct base class (e.g., `TenantBaseDO`) | ERROR |
|
|
102
|
-
| @TableName | Must have `@TableName` with correct table name | ERROR |
|
|
103
|
-
| @Schema | Must have `@Schema` for documentation | WARN |
|
|
104
|
-
| Validation | Required fields must have `@NotNull` or similar | ERROR |
|
|
105
|
-
| Desensitization | Sensitive fields must have desensitization | ERROR |
|
|
106
|
-
|
|
107
|
-
### 3.2 Service Layer Check
|
|
108
|
-
|
|
109
|
-
| Check | Rule | Severity |
|
|
110
|
-
|-------|------|----------|
|
|
111
|
-
| Interface | Must have Service interface and implementation separation | WARN |
|
|
112
|
-
| @Service | Implementation must have `@Service` annotation | ERROR |
|
|
113
|
-
| @Transactional | DB write methods must have `@Transactional` | ERROR |
|
|
114
|
-
| Method Coverage | All methods in design must be implemented | ERROR |
|
|
115
|
-
| Data Permission | Must check data permissions where required | ERROR |
|
|
116
|
-
|
|
117
|
-
### 3.3 Controller Layer Check
|
|
118
|
-
|
|
119
|
-
| Check | Rule | Severity |
|
|
120
|
-
|-------|------|----------|
|
|
121
|
-
| @RestController | Must have `@RestController` annotation | ERROR |
|
|
122
|
-
| @RequestMapping | Must have base `@RequestMapping` annotation | ERROR |
|
|
123
|
-
| @Operation | Endpoints should have `@Operation` for documentation | WARN |
|
|
124
|
-
| @PreAuthorize | Must have permission annotations where required | ERROR |
|
|
125
|
-
| @Valid | Request VO parameters must have `@Valid` | ERROR |
|
|
126
|
-
|
|
127
|
-
### 3.4 Database Mapping Validation
|
|
128
|
-
|
|
129
|
-
- Verify Entity fields match design document
|
|
130
|
-
- Check MyBatis XML mappers exist alongside Mapper interfaces
|
|
131
|
-
- Validate Lombok `@Data` or similar on DO/VO classes
|
|
132
|
-
|
|
133
|
-
## Step 4: API Consistency Check
|
|
134
|
-
|
|
135
|
-
If `api_contract_path` provided:
|
|
136
|
-
|
|
137
|
-
| Check | Description | Severity |
|
|
138
|
-
|-------|-------------|----------|
|
|
139
|
-
| Endpoint Coverage | All contract endpoints exist in Controller | ERROR |
|
|
140
|
-
| HTTP Method | Methods match contract | ERROR |
|
|
141
|
-
| Path Match | URL paths match contract exactly | ERROR |
|
|
142
|
-
| VO Fields | All contract fields present in VO | ERROR |
|
|
143
|
-
| Field Types | Data types match contract | ERROR |
|
|
144
|
-
|
|
145
|
-
## Step 5: Generate Review Report
|
|
146
|
-
|
|
147
|
-
### 5.1 Determine Result
|
|
148
|
-
|
|
149
|
-
| Result | Criteria |
|
|
150
|
-
|--------|----------|
|
|
151
|
-
| **PASS** | 100% files created, 0 ERROR-level issues |
|
|
152
|
-
| **PARTIAL** | 70-99% files created, or non-critical ERROR issues |
|
|
153
|
-
| **FAIL** | <70% files created, or critical blockers present |
|
|
154
|
-
|
|
155
|
-
### 5.2 Write Report
|
|
156
|
-
|
|
157
|
-
Generate report at: `speccrew-workspace/iterations/{number}-{type}-{name}/04.development/{platform_id}/[module]-review-report.md`
|
|
158
|
-
|
|
159
|
-
Use template from `templates/REVIEW-REPORT-TEMPLATE.md`.
|
|
160
|
-
|
|
161
|
-
## Step 6: Task Completion Report
|
|
162
|
-
|
|
163
|
-
### Success
|
|
164
|
-
|
|
165
|
-
```markdown
|
|
166
|
-
## Task Completion Report
|
|
167
|
-
- **Status**: SUCCESS
|
|
168
|
-
- **Task ID**: review-{original_task_id}
|
|
169
|
-
- **Platform**: {platform_id}
|
|
170
|
-
- **Module**: {module_name}
|
|
171
|
-
- **Output Files**: {review_report_path}
|
|
172
|
-
- **Summary**: Review {result}: {completed}/{total} files, {error_count} errors
|
|
173
|
-
```
|
|
174
|
-
|
|
175
|
-
### Failure
|
|
176
|
-
|
|
177
|
-
```markdown
|
|
178
|
-
## Task Completion Report
|
|
179
|
-
- **Status**: FAILED
|
|
180
|
-
- **Task ID**: review-{original_task_id}
|
|
181
|
-
- **Platform**: {platform_id}
|
|
182
|
-
- **Module**: {module_name}
|
|
183
|
-
- **Output Files**: None
|
|
184
|
-
- **Summary**: Review failed during {step}
|
|
185
|
-
- **Error**: {detailed error description}
|
|
186
|
-
- **Error Category**: DEPENDENCY_MISSING | VALIDATION_ERROR | BLOCKED
|
|
187
|
-
- **Recovery Hint**: {suggestion}
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
# Severity Levels
|
|
191
|
-
|
|
192
|
-
| Level | Definition | Action Required |
|
|
193
|
-
|-------|------------|-----------------|
|
|
194
|
-
| **CRITICAL** | Security vulnerability or data integrity issue | Must fix immediately |
|
|
195
|
-
| **ERROR** | Blocking functionality or violating core requirements | Must fix before PASS |
|
|
196
|
-
| **WARN** | Best practice violation or missing documentation | Should fix |
|
|
197
|
-
| **LOW** | Code style or minor optimization suggestion | Optional |
|
|
198
|
-
|
|
199
|
-
# Key Rules
|
|
200
|
-
|
|
201
|
-
| Rule | Description |
|
|
202
|
-
|------|-------------|
|
|
203
|
-
| **Read-Only** | NEVER modify any source code |
|
|
204
|
-
| **Blueprint-Driven** | Validate against design document specifications |
|
|
205
|
-
| **Actionable Output** | PARTIAL/FAIL must include specific fix guidance |
|
|
206
|
-
| **Incremental Support** | Skip already-passed items when previous review provided |
|
|
207
|
-
| **Completeness First** | File existence is primary check before content validation |
|
|
208
|
-
|
|
209
|
-
# Checklist
|
|
210
|
-
|
|
211
|
-
- [ ] All required inputs validated
|
|
212
|
-
- [ ] Design document loaded and parsed
|
|
213
|
-
- [ ] File completeness check completed with category breakdown
|
|
214
|
-
- [ ] DO classes checked for base class and annotations
|
|
215
|
-
- [ ] VO classes checked for validation and desensitization
|
|
216
|
-
- [ ] Service classes checked for @Transactional and permissions
|
|
217
|
-
- [ ] Controller classes checked for annotations and endpoints
|
|
218
|
-
- [ ] API contract validated against implementation (if provided)
|
|
219
|
-
- [ ] Review report written with clear verdict
|
|
220
|
-
- [ ] Re-dispatch guidance provided for PARTIAL/FAIL
|
|
17
|
+
> **REQUIRED**: Before executing this workflow, read the XML workflow specification: speccrew-workspace/docs/rules/agentflow-spec.md
|
|
18
|
+
> Then read and execute the XML workflow in SKILL.xml block-by-block as the authoritative execution plan.
|
|
@@ -8,182 +8,11 @@ tools: Read, Glob, Grep
|
|
|
8
8
|
|
|
9
9
|
- When speccrew-system-developer dispatches desktop code review for a completed module
|
|
10
10
|
- When user requests "Review this desktop module's implementation"
|
|
11
|
-
- When user asks "Check if desktop code matches design"
|
|
12
11
|
- When incremental review is needed after partial desktop implementation
|
|
13
12
|
|
|
14
|
-
# Input Parameters
|
|
15
|
-
|
|
16
|
-
| Parameter | Required | Description |
|
|
17
|
-
|-----------|----------|-------------|
|
|
18
|
-
| `design_doc_path` | Yes | Path to desktop module design document |
|
|
19
|
-
| `implementation_report_path` | Yes | Path to desktop development report |
|
|
20
|
-
| `source_root` | Yes | Root directory of desktop source code |
|
|
21
|
-
| `platform_id` | Yes | Desktop platform (desktop-tauri, desktop-electron) |
|
|
22
|
-
| `api_contract_path` | No | Path to API contract file |
|
|
23
|
-
| `task_id` | Yes | Task identifier from dispatch context |
|
|
24
|
-
| `previous_review_path` | No | Path to previous review report |
|
|
25
|
-
|
|
26
13
|
## AgentFlow Definition
|
|
27
14
|
|
|
28
15
|
<!-- @agentflow: SKILL.xml -->
|
|
29
16
|
|
|
30
|
-
> **REQUIRED**: Before executing this workflow, read the XML workflow specification:
|
|
31
|
-
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
## Workflow
|
|
35
|
-
|
|
36
|
-
### Absolute Constraints
|
|
37
|
-
|
|
38
|
-
> **Violation = review failure.**
|
|
39
|
-
|
|
40
|
-
1. **READ-ONLY OPERATION** — NEVER modify source code files.
|
|
41
|
-
2. **FORBIDDEN: Code fixes** — Do NOT attempt to fix issues. Only document them.
|
|
42
|
-
3. **MANDATORY: Actionable output** — PARTIAL/FAIL results MUST include specific "Re-dispatch Guidance".
|
|
43
|
-
4. **INCREMENTAL REVIEW SUPPORT** — Skip items already marked as passed in previous review.
|
|
44
|
-
|
|
45
|
-
## Step 1: Load Documents
|
|
46
|
-
|
|
47
|
-
### 1.1 Validate Inputs
|
|
48
|
-
|
|
49
|
-
Verify all required parameters provided. If any missing → Report error, stop.
|
|
50
|
-
|
|
51
|
-
### 1.2 Read Design Document
|
|
52
|
-
|
|
53
|
-
Extract: Module Overview, Process Architecture, IPC Contracts, Native Integration points.
|
|
54
|
-
|
|
55
|
-
### 1.3 Read Implementation Report
|
|
56
|
-
|
|
57
|
-
Extract: Completed Files, Implementation Status, Known Issues.
|
|
58
|
-
|
|
59
|
-
### 1.4 Read API Contract (if provided)
|
|
60
|
-
|
|
61
|
-
Extract API endpoints for validation against desktop API calls.
|
|
62
|
-
|
|
63
|
-
## Step 2: File Completeness Check
|
|
64
|
-
|
|
65
|
-
### 2.1 Build Expected File List
|
|
66
|
-
|
|
67
|
-
Desktop file categories:
|
|
68
|
-
|
|
69
|
-
| Category | Pattern | Example |
|
|
70
|
-
|----------|---------|---------|
|
|
71
|
-
| Main Process | `src-tauri/src/**/*.rs` or `main/**/*` | `src-tauri/src/main.rs` |
|
|
72
|
-
| Renderer | `src/**/*` (frontend files) | `src/App.vue` |
|
|
73
|
-
| Preload | `preload/**/*` or `src-tauri/src/preload.rs` | `preload/index.ts` |
|
|
74
|
-
| IPC Handlers | `src-tauri/src/commands/**/*.rs` | `commands/file.rs` |
|
|
75
|
-
| Native Modules | `native/**/*` | `native/fileSystem.ts` |
|
|
76
|
-
|
|
77
|
-
### 2.2 Scan Actual Files
|
|
78
|
-
|
|
79
|
-
Use `Glob` to scan `source_root` for implemented files.
|
|
80
|
-
|
|
81
|
-
### 2.3 Calculate Completeness
|
|
82
|
-
|
|
83
|
-
Generate completeness matrix and percentage.
|
|
84
|
-
|
|
85
|
-
## Step 3: Desktop-Specific Compliance Check
|
|
86
|
-
|
|
87
|
-
### 3.1 Process Separation Validation
|
|
88
|
-
|
|
89
|
-
| Check | Rule | Severity |
|
|
90
|
-
|-------|------|----------|
|
|
91
|
-
| Main/Renderer Separation | Business logic in main process only | CRITICAL |
|
|
92
|
-
| No Node in Renderer | Renderer has no direct Node.js access | CRITICAL |
|
|
93
|
-
| Context Isolation | contextIsolation enabled | CRITICAL |
|
|
94
|
-
|
|
95
|
-
### 3.2 IPC Channel Consistency
|
|
96
|
-
|
|
97
|
-
| Check | Rule | Severity |
|
|
98
|
-
|-------|------|----------|
|
|
99
|
-
| Channel Naming | IPC channels follow naming convention | ERROR |
|
|
100
|
-
| Type Safety | IPC payloads properly typed | ERROR |
|
|
101
|
-
| Channel Registration | All channels registered in preload | ERROR |
|
|
102
|
-
| Bidirectional Safety | No unsafe IPC patterns | CRITICAL |
|
|
103
|
-
|
|
104
|
-
### 3.3 Security Isolation
|
|
105
|
-
|
|
106
|
-
| Check | Rule | Severity |
|
|
107
|
-
|-------|------|----------|
|
|
108
|
-
| contextBridge | Uses contextBridge for API exposure | CRITICAL |
|
|
109
|
-
| Preload Script | Preload script properly configured | CRITICAL |
|
|
110
|
-
| CSP Headers | Content Security Policy configured | ERROR |
|
|
111
|
-
| Remote Content | No unsafe remote content loading | CRITICAL |
|
|
112
|
-
|
|
113
|
-
### 3.4 Native Integration Check
|
|
114
|
-
|
|
115
|
-
| Check | Rule | Severity |
|
|
116
|
-
|-------|------|----------|
|
|
117
|
-
| File System | File operations in main process only | CRITICAL |
|
|
118
|
-
| System Notifications | Notifications properly implemented | WARN |
|
|
119
|
-
| Native Menus | Menu structure matches design | ERROR |
|
|
120
|
-
| System Tray | Tray implementation if required | ERROR |
|
|
121
|
-
|
|
122
|
-
### 3.5 Packaging Configuration
|
|
123
|
-
|
|
124
|
-
| Check | Rule | Severity |
|
|
125
|
-
|-------|------|----------|
|
|
126
|
-
| Build Config | Build configuration complete | ERROR |
|
|
127
|
-
| Assets | Required assets included | ERROR |
|
|
128
|
-
| Signing | Code signing configured (if required) | WARN |
|
|
129
|
-
| Auto-Update | Auto-update mechanism (if required) | WARN |
|
|
130
|
-
|
|
131
|
-
## Step 4: Generate Review Report
|
|
132
|
-
|
|
133
|
-
### 4.1 Determine Result
|
|
134
|
-
|
|
135
|
-
| Result | Criteria |
|
|
136
|
-
|--------|----------|
|
|
137
|
-
| **PASS** | 100% files created, 0 ERROR-level issues |
|
|
138
|
-
| **PARTIAL** | 70-99% files created, or non-critical ERROR issues |
|
|
139
|
-
| **FAIL** | <70% files created, or critical blockers present |
|
|
140
|
-
|
|
141
|
-
### 4.2 Write Report
|
|
142
|
-
|
|
143
|
-
Generate report at: `speccrew-workspace/iterations/{number}-{type}-{name}/04.development/{platform_id}/[module]-review-report.md`
|
|
144
|
-
|
|
145
|
-
Use template from `templates/REVIEW-REPORT-TEMPLATE.md`.
|
|
146
|
-
|
|
147
|
-
## Step 5: Task Completion Report
|
|
148
|
-
|
|
149
|
-
```markdown
|
|
150
|
-
## Task Completion Report
|
|
151
|
-
- **Status**: SUCCESS
|
|
152
|
-
- **Task ID**: review-{original_task_id}
|
|
153
|
-
- **Platform**: {platform_id}
|
|
154
|
-
- **Module**: {module_name}
|
|
155
|
-
- **Output Files**: {review_report_path}
|
|
156
|
-
- **Summary**: Review {result}: {completed}/{total} files, {error_count} errors
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
# Severity Levels
|
|
160
|
-
|
|
161
|
-
| Level | Definition | Action Required |
|
|
162
|
-
|-------|------------|-----------------|
|
|
163
|
-
| **CRITICAL** | Security vulnerability or sandbox escape risk | Must fix immediately |
|
|
164
|
-
| **ERROR** | Blocking functionality or violating core requirements | Must fix before PASS |
|
|
165
|
-
| **WARN** | Best practice violation or missing documentation | Should fix |
|
|
166
|
-
| **LOW** | Code style or minor optimization suggestion | Optional |
|
|
167
|
-
|
|
168
|
-
# Key Rules
|
|
169
|
-
|
|
170
|
-
| Rule | Description |
|
|
171
|
-
|------|-------------|
|
|
172
|
-
| **Read-Only** | NEVER modify any source code |
|
|
173
|
-
| **Security First** | Desktop security is paramount - verify isolation |
|
|
174
|
-
| **Blueprint-Driven** | Validate against design document specifications |
|
|
175
|
-
| **Actionable Output** | PARTIAL/FAIL must include specific fix guidance |
|
|
176
|
-
| **Completeness First** | File existence is primary check before content validation |
|
|
177
|
-
|
|
178
|
-
# Checklist
|
|
179
|
-
|
|
180
|
-
- [ ] All required inputs validated
|
|
181
|
-
- [ ] Design document loaded and parsed
|
|
182
|
-
- [ ] File completeness check completed
|
|
183
|
-
- [ ] Main/renderer separation validated
|
|
184
|
-
- [ ] IPC channels checked for consistency
|
|
185
|
-
- [ ] Security isolation verified
|
|
186
|
-
- [ ] Native integration checked
|
|
187
|
-
- [ ] Packaging configuration validated
|
|
188
|
-
- [ ] Review report written with clear verdict
|
|
189
|
-
- [ ] Re-dispatch guidance provided for PARTIAL/FAIL
|
|
17
|
+
> **REQUIRED**: Before executing this workflow, read the XML workflow specification: speccrew-workspace/docs/rules/agentflow-spec.md
|
|
18
|
+
> Then read and execute the XML workflow in SKILL.xml block-by-block as the authoritative execution plan.
|