@edupia-tutor/spec-driven-docs 0.14.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/bin/build.js +230 -0
- package/bin/index.js +598 -0
- package/commands/debug.md +830 -0
- package/commands/debug.tmpl +257 -0
- package/commands/define-product.md +652 -0
- package/commands/define-product.tmpl +158 -0
- package/commands/dev-gen-test.md +1010 -0
- package/commands/dev-gen-test.tmpl +490 -0
- package/commands/dev-run-test.md +744 -0
- package/commands/dev-run-test.tmpl +224 -0
- package/commands/dev-smoke-test.md +711 -0
- package/commands/dev-smoke-test.tmpl +217 -0
- package/commands/fix-bug.md +744 -0
- package/commands/fix-bug.tmpl +171 -0
- package/commands/generate-bdd.md +1054 -0
- package/commands/generate-bdd.tmpl +534 -0
- package/commands/generate-code.md +869 -0
- package/commands/generate-code.tmpl +349 -0
- package/commands/generate-design-spec.md +958 -0
- package/commands/generate-design-spec.tmpl +464 -0
- package/commands/generate-prd.md +748 -0
- package/commands/generate-prd.tmpl +254 -0
- package/commands/generate-spec-manifest.md +658 -0
- package/commands/generate-spec-manifest.tmpl +164 -0
- package/commands/generate-tech-docs.md +849 -0
- package/commands/generate-tech-docs.tmpl +355 -0
- package/commands/learn.md +636 -0
- package/commands/learn.tmpl +63 -0
- package/commands/map-testids.md +575 -0
- package/commands/map-testids.tmpl +81 -0
- package/commands/propose-scenario.md +623 -0
- package/commands/propose-scenario.tmpl +129 -0
- package/commands/qc-analyze.md +580 -0
- package/commands/qc-analyze.tmpl +86 -0
- package/commands/qc-design-test.md +562 -0
- package/commands/qc-design-test.tmpl +68 -0
- package/commands/qc-plan.md +543 -0
- package/commands/qc-plan.tmpl +49 -0
- package/commands/qc-report.md +554 -0
- package/commands/qc-report.tmpl +60 -0
- package/commands/qc-review.md +547 -0
- package/commands/qc-review.tmpl +53 -0
- package/commands/qc-run-test.md +604 -0
- package/commands/qc-run-test.tmpl +84 -0
- package/commands/refine-prd.md +772 -0
- package/commands/refine-prd.tmpl +140 -0
- package/commands/report-bug.md +639 -0
- package/commands/report-bug.tmpl +145 -0
- package/commands/review-code.md +677 -0
- package/commands/review-code.tmpl +104 -0
- package/commands/review-context.md +1047 -0
- package/commands/review-context.tmpl +415 -0
- package/commands/review-tech-docs.md +811 -0
- package/commands/review-tech-docs.tmpl +317 -0
- package/commands/setup-ai-first.md +545 -0
- package/commands/setup-ai-first.tmpl +358 -0
- package/commands/sync.md +451 -0
- package/commands/sync.tmpl +351 -0
- package/commands/update-framework.md +251 -0
- package/commands/update-framework.tmpl +151 -0
- package/commands/validate-traces.md +842 -0
- package/commands/validate-traces.tmpl +348 -0
- package/core/FRAMEWORK_VERSION +1 -0
- package/core/commands/debug.md +830 -0
- package/core/commands/define-product.md +652 -0
- package/core/commands/dev-gen-test.md +1010 -0
- package/core/commands/dev-run-test.md +744 -0
- package/core/commands/dev-smoke-test.md +711 -0
- package/core/commands/fix-bug.md +744 -0
- package/core/commands/generate-bdd.md +1054 -0
- package/core/commands/generate-code.md +869 -0
- package/core/commands/generate-design-spec.md +958 -0
- package/core/commands/generate-prd.md +748 -0
- package/core/commands/generate-spec-manifest.md +658 -0
- package/core/commands/generate-tech-docs.md +849 -0
- package/core/commands/learn.md +636 -0
- package/core/commands/map-testids.md +575 -0
- package/core/commands/propose-scenario.md +623 -0
- package/core/commands/qc-analyze.md +580 -0
- package/core/commands/qc-design-test.md +562 -0
- package/core/commands/qc-plan.md +543 -0
- package/core/commands/qc-report.md +554 -0
- package/core/commands/qc-review.md +547 -0
- package/core/commands/qc-run-test.md +604 -0
- package/core/commands/refine-prd.md +772 -0
- package/core/commands/report-bug.md +639 -0
- package/core/commands/review-code.md +677 -0
- package/core/commands/review-context.md +1047 -0
- package/core/commands/review-tech-docs.md +811 -0
- package/core/commands/setup-ai-first.md +545 -0
- package/core/commands/sync.md +451 -0
- package/core/commands/update-framework.md +251 -0
- package/core/commands/validate-traces.md +842 -0
- package/core/hooks/data-guard.js +141 -0
- package/core/hooks/settings.json +18 -0
- package/core/modules/android-compose/module.yaml +13 -0
- package/core/modules/android-compose/stack-profile.yaml +57 -0
- package/core/modules/angular/architecture-snippets/component-patterns.md +187 -0
- package/core/modules/angular/module.yaml +6 -0
- package/core/modules/angular/stack-profile.yaml +38 -0
- package/core/modules/context-engineering/architecture-snippets/context-design.md +119 -0
- package/core/modules/context-engineering/module.yaml +9 -0
- package/core/modules/context-engineering/stack-profile.yaml +61 -0
- package/core/modules/dotnet/architecture-snippets/clean-arch.md +160 -0
- package/core/modules/dotnet/module.yaml +6 -0
- package/core/modules/dotnet/stack-profile.yaml +50 -0
- package/core/modules/flutter/module.yaml +14 -0
- package/core/modules/flutter/stack-profile.yaml +59 -0
- package/core/modules/golang/architecture-snippets/domain-layout.md +283 -0
- package/core/modules/golang/module.yaml +6 -0
- package/core/modules/golang/stack-profile.yaml +40 -0
- package/core/modules/ios-swiftui/module.yaml +13 -0
- package/core/modules/ios-swiftui/stack-profile.yaml +55 -0
- package/core/modules/java-spring/architecture-snippets/layered-arch.md +201 -0
- package/core/modules/java-spring/module.yaml +15 -0
- package/core/modules/java-spring/stack-profile.yaml +28 -0
- package/core/modules/nextjs/architecture-snippets/app-router-patterns.md +269 -0
- package/core/modules/nextjs/module.yaml +14 -0
- package/core/modules/nextjs/stack-profile.yaml +74 -0
- package/core/modules/nuxt/module.yaml +14 -0
- package/core/modules/nuxt/stack-profile.yaml +58 -0
- package/core/modules/php-laravel/architecture-snippets/service-repository.md +302 -0
- package/core/modules/php-laravel/module.yaml +15 -0
- package/core/modules/php-laravel/stack-profile.yaml +56 -0
- package/core/modules/qc-playwright/stack-profile.yaml +66 -0
- package/core/modules/react/architecture-snippets/hooks-query-patterns.md +254 -0
- package/core/modules/react/module.yaml +14 -0
- package/core/modules/react/stack-profile.yaml +63 -0
- package/core/modules/react-native/module.yaml +14 -0
- package/core/modules/react-native/stack-profile.yaml +56 -0
- package/core/modules/vue/module.yaml +14 -0
- package/core/modules/vue/stack-profile.yaml +65 -0
- package/core/rules/data-protection.md +80 -0
- package/core/rules/workflow.md +44 -0
- package/core/skills/code/SKILL.md +770 -0
- package/core/skills/debug/SKILL.md +869 -0
- package/core/skills/design-spec/SKILL.md +589 -0
- package/core/skills/discovery/SKILL.md +554 -0
- package/core/skills/prd/SKILL.md +562 -0
- package/core/skills/qc/qa-analyst/DOC_GAPS.template.md +63 -0
- package/core/skills/qc/qa-analyst/acceptance-criteria.md +60 -0
- package/core/skills/qc/qa-analyst/business-rules.md +59 -0
- package/core/skills/qc/qa-analyst/data-flow.md +64 -0
- package/core/skills/qc/qa-analyst/spec-breakdown.md +61 -0
- package/core/skills/qc/qa-designer/e2e/journey.md +41 -0
- package/core/skills/qc/qa-designer/exploratory/charter.md +68 -0
- package/core/skills/qc/qa-designer/exploratory/explore-to-functional.md +43 -0
- package/core/skills/qc/qa-designer/functional/api.md +45 -0
- package/core/skills/qc/qa-designer/functional/gui-feature.md +46 -0
- package/core/skills/qc/qa-designer/functional/gui-screen.md +52 -0
- package/core/skills/qc/qa-designer/integration/api.md +42 -0
- package/core/skills/qc/qa-designer/integration/db.md +39 -0
- package/core/skills/qc/qa-designer/integration/gui.md +40 -0
- package/core/skills/qc/qa-designer/integration/kafka.md +40 -0
- package/core/skills/qc/qa-designer/non-functional.md +40 -0
- package/core/skills/qc/qa-planner/test-plan.md +120 -0
- package/core/skills/qc/qa-reviewer/script/e2e.md +87 -0
- package/core/skills/qc/qa-reviewer/script/exploratory.md +45 -0
- package/core/skills/qc/qa-reviewer/script/functional.md +101 -0
- package/core/skills/qc/qa-reviewer/script/integration.md +91 -0
- package/core/skills/qc/qa-reviewer/script/non-functional.md +126 -0
- package/core/skills/qc/qa-reviewer/test-case/e2e.md +73 -0
- package/core/skills/qc/qa-reviewer/test-case/exploratory.md +43 -0
- package/core/skills/qc/qa-reviewer/test-case/functional.md +76 -0
- package/core/skills/qc/qa-reviewer/test-case/integration.md +69 -0
- package/core/skills/qc/qa-reviewer/test-case/non-functional.md +73 -0
- package/core/skills/qc/qa-runner/e2e.md +49 -0
- package/core/skills/qc/qa-runner/exploratory/session.md +36 -0
- package/core/skills/qc/qa-runner/functional/api.md +35 -0
- package/core/skills/qc/qa-runner/functional/gui-feature.md +51 -0
- package/core/skills/qc/qa-runner/functional/gui-screen.md +55 -0
- package/core/skills/qc/qa-runner/integration.md +47 -0
- package/core/skills/qc/qa-runner/non-functional.md +49 -0
- package/core/skills/qc/qa-runner/report/report.md +37 -0
- package/core/skills/setup-ai-first/SKILL.md +216 -0
- package/core/skills/spec/SKILL.md +461 -0
- package/core/skills/test/SKILL.md +1297 -0
- package/core/steps/capture-lesson.md +79 -0
- package/core/steps/context-loader.md +307 -0
- package/core/steps/gate.md +87 -0
- package/core/steps/report-footer.md +100 -0
- package/core/steps/review-fanout.md +138 -0
- package/core/steps/spawn-agent.md +124 -0
- package/core/steps/trace-mirror.md +26 -0
- package/core/templates/architecture.template.md +113 -0
- package/core/templates/design-spec.template.md +217 -0
- package/core/templates/feature.template +259 -0
- package/core/templates/platform-guide.template.md +145 -0
- package/core/templates/prd.template.md +327 -0
- package/core/templates/product-definition.template.md +168 -0
- package/core/templates/project-context.yaml +161 -0
- package/docs/01-getting-started/README.md +19 -0
- package/docs/01-getting-started/core-concepts.md +102 -0
- package/docs/01-getting-started/installation.md +156 -0
- package/docs/01-getting-started/quickstart.md +85 -0
- package/docs/02-guides/README.md +26 -0
- package/docs/02-guides/developer/README.md +46 -0
- package/docs/02-guides/developer/bdd-and-trace.md +125 -0
- package/docs/02-guides/developer/commands.md +76 -0
- package/docs/02-guides/developer/pr-checklist.md +15 -0
- package/docs/02-guides/developer/scenarios.md +460 -0
- package/docs/02-guides/developer/workflow.md +121 -0
- package/docs/02-guides/product-owner/README.md +79 -0
- package/docs/02-guides/product-owner/commands.md +30 -0
- package/docs/02-guides/product-owner/handoff-checklist.md +42 -0
- package/docs/02-guides/product-owner/prd-writing-rules.md +45 -0
- package/docs/02-guides/product-owner/scenarios.md +436 -0
- package/docs/02-guides/tester/README.md +75 -0
- package/docs/02-guides/tester/bug-reporting.md +117 -0
- package/docs/02-guides/tester/qc-automation.md +165 -0
- package/docs/02-guides/tester/reading-specs.md +79 -0
- package/docs/02-guides/tester/scenarios.md +186 -0
- package/docs/02-guides/tester/spec-manifest.md +130 -0
- package/docs/02-guides/tester/test-checklist.md +31 -0
- package/docs/02-guides/tester/workflow.md +77 -0
- package/docs/03-concepts/README.md +19 -0
- package/docs/03-concepts/architecture.md +248 -0
- package/docs/03-concepts/pipeline.md +274 -0
- package/docs/03-concepts/traceability.md +149 -0
- package/docs/04-operations/README.md +33 -0
- package/docs/04-operations/bug-flow.md +362 -0
- package/docs/04-operations/publishing.md +137 -0
- package/docs/04-operations/sync-and-update.md +522 -0
- package/docs/05-reference/README.md +32 -0
- package/docs/05-reference/command-cheatsheet.md +147 -0
- package/docs/05-reference/commands.md +232 -0
- package/docs/05-reference/modules.md +110 -0
- package/docs/05-reference/trace-schema.md +153 -0
- package/docs/README.md +49 -0
- package/hooks/data-guard.js +141 -0
- package/hooks/settings.json +18 -0
- package/modules/android-compose/module.yaml +13 -0
- package/modules/android-compose/stack-profile.yaml +57 -0
- package/modules/angular/architecture-snippets/component-patterns.md +187 -0
- package/modules/angular/module.yaml +6 -0
- package/modules/angular/stack-profile.yaml +38 -0
- package/modules/context-engineering/architecture-snippets/context-design.md +119 -0
- package/modules/context-engineering/module.yaml +9 -0
- package/modules/context-engineering/stack-profile.yaml +61 -0
- package/modules/dotnet/architecture-snippets/clean-arch.md +160 -0
- package/modules/dotnet/module.yaml +6 -0
- package/modules/dotnet/stack-profile.yaml +50 -0
- package/modules/flutter/module.yaml +14 -0
- package/modules/flutter/stack-profile.yaml +59 -0
- package/modules/golang/architecture-snippets/domain-layout.md +283 -0
- package/modules/golang/module.yaml +6 -0
- package/modules/golang/stack-profile.yaml +40 -0
- package/modules/ios-swiftui/module.yaml +13 -0
- package/modules/ios-swiftui/stack-profile.yaml +55 -0
- package/modules/java-spring/architecture-snippets/layered-arch.md +201 -0
- package/modules/java-spring/module.yaml +15 -0
- package/modules/java-spring/stack-profile.yaml +28 -0
- package/modules/nextjs/architecture-snippets/app-router-patterns.md +269 -0
- package/modules/nextjs/module.yaml +14 -0
- package/modules/nextjs/stack-profile.yaml +74 -0
- package/modules/nuxt/module.yaml +14 -0
- package/modules/nuxt/stack-profile.yaml +58 -0
- package/modules/php-laravel/architecture-snippets/service-repository.md +302 -0
- package/modules/php-laravel/module.yaml +15 -0
- package/modules/php-laravel/stack-profile.yaml +56 -0
- package/modules/qc-playwright/stack-profile.yaml +66 -0
- package/modules/react/architecture-snippets/hooks-query-patterns.md +254 -0
- package/modules/react/module.yaml +14 -0
- package/modules/react/stack-profile.yaml +63 -0
- package/modules/react-native/module.yaml +14 -0
- package/modules/react-native/stack-profile.yaml +56 -0
- package/modules/vue/module.yaml +14 -0
- package/modules/vue/stack-profile.yaml +65 -0
- package/package.json +49 -0
- package/rules/data-protection.md +80 -0
- package/rules/workflow.md +44 -0
- package/scripts/init.sh +49 -0
- package/scripts/migrate-specs.js +256 -0
- package/scripts/upgrade.sh +94 -0
- package/skills/code/SKILL.md +770 -0
- package/skills/code/SKILL.tmpl +176 -0
- package/skills/debug/SKILL.md +869 -0
- package/skills/debug/SKILL.tmpl +262 -0
- package/skills/design-spec/SKILL.md +589 -0
- package/skills/design-spec/SKILL.tmpl +95 -0
- package/skills/discovery/SKILL.md +554 -0
- package/skills/discovery/SKILL.tmpl +147 -0
- package/skills/prd/SKILL.md +562 -0
- package/skills/prd/SKILL.tmpl +188 -0
- package/skills/qc/qa-analyst/DOC_GAPS.template.md +63 -0
- package/skills/qc/qa-analyst/acceptance-criteria.md +60 -0
- package/skills/qc/qa-analyst/business-rules.md +59 -0
- package/skills/qc/qa-analyst/data-flow.md +64 -0
- package/skills/qc/qa-analyst/spec-breakdown.md +61 -0
- package/skills/qc/qa-designer/e2e/journey.md +41 -0
- package/skills/qc/qa-designer/exploratory/charter.md +68 -0
- package/skills/qc/qa-designer/exploratory/explore-to-functional.md +43 -0
- package/skills/qc/qa-designer/functional/api.md +45 -0
- package/skills/qc/qa-designer/functional/gui-feature.md +46 -0
- package/skills/qc/qa-designer/functional/gui-screen.md +52 -0
- package/skills/qc/qa-designer/integration/api.md +42 -0
- package/skills/qc/qa-designer/integration/db.md +39 -0
- package/skills/qc/qa-designer/integration/gui.md +40 -0
- package/skills/qc/qa-designer/integration/kafka.md +40 -0
- package/skills/qc/qa-designer/non-functional.md +40 -0
- package/skills/qc/qa-planner/test-plan.md +120 -0
- package/skills/qc/qa-reviewer/script/e2e.md +87 -0
- package/skills/qc/qa-reviewer/script/exploratory.md +45 -0
- package/skills/qc/qa-reviewer/script/functional.md +101 -0
- package/skills/qc/qa-reviewer/script/integration.md +91 -0
- package/skills/qc/qa-reviewer/script/non-functional.md +126 -0
- package/skills/qc/qa-reviewer/test-case/e2e.md +73 -0
- package/skills/qc/qa-reviewer/test-case/exploratory.md +43 -0
- package/skills/qc/qa-reviewer/test-case/functional.md +76 -0
- package/skills/qc/qa-reviewer/test-case/integration.md +69 -0
- package/skills/qc/qa-reviewer/test-case/non-functional.md +73 -0
- package/skills/qc/qa-runner/e2e.md +49 -0
- package/skills/qc/qa-runner/exploratory/session.md +36 -0
- package/skills/qc/qa-runner/functional/api.md +35 -0
- package/skills/qc/qa-runner/functional/gui-feature.md +51 -0
- package/skills/qc/qa-runner/functional/gui-screen.md +55 -0
- package/skills/qc/qa-runner/integration.md +47 -0
- package/skills/qc/qa-runner/non-functional.md +49 -0
- package/skills/qc/qa-runner/report/report.md +37 -0
- package/skills/setup-ai-first/SKILL.md +216 -0
- package/skills/setup-ai-first/SKILL.tmpl +116 -0
- package/skills/spec/SKILL.md +461 -0
- package/skills/spec/SKILL.tmpl +174 -0
- package/skills/test/SKILL.md +1297 -0
- package/skills/test/SKILL.tmpl +296 -0
- package/steps/capture-lesson.md +79 -0
- package/steps/context-loader.md +307 -0
- package/steps/gate.md +87 -0
- package/steps/report-footer.md +100 -0
- package/steps/review-fanout.md +138 -0
- package/steps/spawn-agent.md +124 -0
- package/steps/trace-mirror.md +26 -0
- package/templates/architecture.template.md +113 -0
- package/templates/design-spec.template.md +217 -0
- package/templates/feature.template +259 -0
- package/templates/platform-guide.template.md +145 -0
- package/templates/prd.template.md +327 -0
- package/templates/product-definition.template.md +168 -0
- package/templates/project-context.yaml +161 -0
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generates implementation code from approved BDD specs with traceability tags, or performs a read-only code review against spec compliance and architecture rules. Trigger when: "/generate-code", "/review-code", "sinh code", "generate code", "viết code", "implement feature", "review code", "kiểm tra code", "code review", "check implementation".
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Code Skills — Generate & Review
|
|
6
|
+
|
|
7
|
+
This skill handles `/generate-code` (implementation) and `/review-code` (read-only review).
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## /generate-code — Generate Implementation Code
|
|
12
|
+
|
|
13
|
+
### Gate
|
|
14
|
+
|
|
15
|
+
<!-- Directory: specs/*/*/bdd/*.feature -->
|
|
16
|
+
{{include:steps/gate.md}}
|
|
17
|
+
|
|
18
|
+
4. Check for existing trace state: read `.trace/{domain}/{prd-slug}/{UC-ID}.tsv` if it exists.
|
|
19
|
+
- Identify: new scenarios vs. drifted (changed) vs. synced (skip)
|
|
20
|
+
|
|
21
|
+
5. Show **CHECKPOINT — Comprehension**:
|
|
22
|
+
```
|
|
23
|
+
I understand:
|
|
24
|
+
- Feature: {name} | Ticket: {TICKET_ID if known}
|
|
25
|
+
- UC: {UC-ID} in domain: {domain}
|
|
26
|
+
- Scenarios: {N} total ({X} new, {Y} drifted, {Z} synced-skip)
|
|
27
|
+
- Layer order: {from CLAUDE.md architecture}
|
|
28
|
+
- Files to create/update: [list in generation order]
|
|
29
|
+
|
|
30
|
+
Proceed? (Y/N)
|
|
31
|
+
```
|
|
32
|
+
Wait for confirmation.
|
|
33
|
+
|
|
34
|
+
### Context Load
|
|
35
|
+
|
|
36
|
+
{{include:steps/context-loader.md}}
|
|
37
|
+
|
|
38
|
+
Also read:
|
|
39
|
+
- `.feature` file (what to implement)
|
|
40
|
+
- Tech doc `specs/{domain}/{prd-slug}/tech-docs/{UC-ID}-tech-design.md` (if exists)
|
|
41
|
+
- Existing entity/model files in this domain (to follow patterns)
|
|
42
|
+
|
|
43
|
+
### Branch
|
|
44
|
+
|
|
45
|
+
Create a feature branch:
|
|
46
|
+
```bash
|
|
47
|
+
git checkout -b feature/{TICKET_ID}-{slug}
|
|
48
|
+
# If no ticket ID: feature/{UC-ID}-{slug}
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### Generate
|
|
52
|
+
|
|
53
|
+
Generate code in layer order (adapt to your stack):
|
|
54
|
+
|
|
55
|
+
**For a typical layered backend (e.g., Controller → Service → Repository):**
|
|
56
|
+
|
|
57
|
+
1. **DTOs / Request-Response models** — input validation, output shape
|
|
58
|
+
2. **Domain entity / model** — data representation
|
|
59
|
+
3. **Repository / Data Access** — queries, filters
|
|
60
|
+
4. **Service interface** — contract
|
|
61
|
+
5. **Service implementation** — business logic, `@Transactional` where needed
|
|
62
|
+
6. **Facade interface** (if architecture uses facade layer) — orchestration contract
|
|
63
|
+
7. **Facade implementation** — cross-service orchestration
|
|
64
|
+
8. **Controller / Handler** — HTTP mapping, auth, `@trace` tags
|
|
65
|
+
|
|
66
|
+
**Critical: Traceability tags on every controller method:**
|
|
67
|
+
```
|
|
68
|
+
# @trace.implements={UC-ID}-SC{N}
|
|
69
|
+
# @trace.source=specs/{domain}/{prd-slug}/bdd/{UC-ID}.feature
|
|
70
|
+
```
|
|
71
|
+
(Use your language's comment syntax)
|
|
72
|
+
|
|
73
|
+
### Self-Review (3 rounds)
|
|
74
|
+
|
|
75
|
+
After generating, verify:
|
|
76
|
+
- [ ] Every scenario in .feature has a corresponding controller endpoint
|
|
77
|
+
- [ ] `@trace.implements` tag on every endpoint
|
|
78
|
+
- [ ] Architecture layer rules respected (from CLAUDE.md)
|
|
79
|
+
- [ ] Error handling matches CLAUDE.md §error_handling
|
|
80
|
+
- [ ] No magic numbers, no debug logging
|
|
81
|
+
- [ ] Coding standards from CLAUDE.md followed
|
|
82
|
+
|
|
83
|
+
If issues found → fix inline before proceeding.
|
|
84
|
+
|
|
85
|
+
### Build Verify
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
{BUILD_COMMAND} # from project-context.yaml, max 3 retries
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
If build fails: read error, fix, retry. After 3 failures, report to user with diagnosis.
|
|
92
|
+
|
|
93
|
+
### Write Trace State
|
|
94
|
+
|
|
95
|
+
Update `.trace/{domain}/{prd-slug}/{UC-ID}.tsv`:
|
|
96
|
+
```
|
|
97
|
+
UC-ID\tSC-ID\tsc_version\timplemented_by\tlast_updated
|
|
98
|
+
{UC-ID}\tSC1\t{hash of scenario text}\t{ControllerClass}.{method}\t{date}
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
### Commit
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
git add {changed files}
|
|
105
|
+
git commit -m "{commit_format from CLAUDE.md}: {description}"
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### Report
|
|
109
|
+
|
|
110
|
+
```
|
|
111
|
+
/generate-code Complete — {UC-ID}
|
|
112
|
+
- Files created: {N} | Updated: {M}
|
|
113
|
+
- Build: SUCCESS (attempt {K}/3)
|
|
114
|
+
- Branch: feature/{TICKET_ID}-{slug}
|
|
115
|
+
- Trace: .trace/{domain}/{prd-slug}/{UC-ID}.tsv updated
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
{{include:steps/report-footer.md}}
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## /review-code — Read-Only Code Review
|
|
123
|
+
|
|
124
|
+
**IMPORTANT**: This is READ-ONLY. Report issues but do NOT make changes.
|
|
125
|
+
|
|
126
|
+
### Input
|
|
127
|
+
|
|
128
|
+
Accept: UC-ID, file path, or current branch name.
|
|
129
|
+
|
|
130
|
+
### Review Dimensions
|
|
131
|
+
|
|
132
|
+
#### 1. Traceability
|
|
133
|
+
- [ ] Every controller endpoint has `@trace.implements` tag?
|
|
134
|
+
- [ ] Every test file has `@trace.verifies` tag?
|
|
135
|
+
- [ ] No `@trace` tags on non-controller layers (Service, Repository, etc.)?
|
|
136
|
+
- [ ] `.trace/{domain}/{prd-slug}/{UC-ID}.tsv` is up to date?
|
|
137
|
+
|
|
138
|
+
#### 2. Layer Architecture (from CLAUDE.md)
|
|
139
|
+
- [ ] Each class is in the correct layer?
|
|
140
|
+
- [ ] Layer dependencies flow in the right direction?
|
|
141
|
+
- [ ] No layer is bypassed (e.g., Controller calling Repository directly)?
|
|
142
|
+
|
|
143
|
+
#### 3. Coding Standards (from CLAUDE.md)
|
|
144
|
+
- [ ] Naming conventions followed?
|
|
145
|
+
- [ ] Response wrapper used consistently?
|
|
146
|
+
- [ ] Exceptions thrown (not swallowed or manually built into responses)?
|
|
147
|
+
- [ ] No magic numbers?
|
|
148
|
+
- [ ] No sensitive data in logs?
|
|
149
|
+
- [ ] Transaction annotations correct?
|
|
150
|
+
|
|
151
|
+
#### 4. Spec Compliance
|
|
152
|
+
- [ ] Every scenario in .feature has an implementation?
|
|
153
|
+
- [ ] No undocumented endpoints (code not backed by spec)?
|
|
154
|
+
|
|
155
|
+
### Output
|
|
156
|
+
|
|
157
|
+
```
|
|
158
|
+
/review-code Report — {UC-ID}
|
|
159
|
+
Critical: {X} | Major: {Y} | Minor: {Z}
|
|
160
|
+
|
|
161
|
+
### Critical
|
|
162
|
+
| # | File | Line | Issue | Suggested Fix |
|
|
163
|
+
|---|------|------|-------|---------------|
|
|
164
|
+
|
|
165
|
+
### Major
|
|
166
|
+
| # | File | Line | Issue | Suggested Fix |
|
|
167
|
+
|
|
168
|
+
### Minor
|
|
169
|
+
| # | File | Line | Issue | Suggested Fix |
|
|
170
|
+
|
|
171
|
+
Verdict: APPROVED ✅ | NEEDS_FIX ❌
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
If `NEEDS_FIX`: list specific files to change and run `/fix-bug` or correct inline.
|
|
175
|
+
|
|
176
|
+
{{include:steps/report-footer.md}}
|