@edupia-tutor/spec-driven-docs 0.14.0 → 0.14.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/bin/index.js +12 -1
- package/commands/debug.md +436 -436
- package/commands/debug.tmpl +111 -111
- package/commands/define-product.md +350 -345
- package/commands/define-product.tmpl +69 -64
- package/commands/dev-gen-test.md +365 -365
- package/commands/dev-gen-test.tmpl +63 -63
- package/commands/dev-run-test.md +376 -376
- package/commands/dev-run-test.tmpl +74 -74
- package/commands/dev-smoke-test.md +341 -341
- package/commands/dev-smoke-test.tmpl +60 -60
- package/commands/fix-bug.md +403 -403
- package/commands/fix-bug.tmpl +78 -78
- package/commands/generate-bdd.md +513 -513
- package/commands/generate-bdd.tmpl +211 -211
- package/commands/generate-code.md +481 -483
- package/commands/generate-code.tmpl +179 -181
- package/commands/generate-design-spec.md +497 -497
- package/commands/generate-design-spec.tmpl +220 -220
- package/commands/generate-prd.md +452 -400
- package/commands/generate-prd.tmpl +50 -200
- package/commands/generate-spec-manifest.md +340 -340
- package/commands/generate-spec-manifest.tmpl +59 -59
- package/commands/generate-tech-docs.md +365 -365
- package/commands/generate-tech-docs.tmpl +84 -84
- package/commands/learn.md +347 -347
- package/commands/learn.tmpl +22 -22
- package/commands/map-testids.md +322 -322
- package/commands/map-testids.tmpl +41 -41
- package/commands/propose-scenario.md +335 -335
- package/commands/propose-scenario.tmpl +54 -54
- package/commands/qc-analyze.md +323 -324
- package/commands/qc-analyze.tmpl +42 -43
- package/commands/qc-design-test.md +304 -304
- package/commands/qc-design-test.tmpl +23 -23
- package/commands/qc-plan.md +297 -297
- package/commands/qc-plan.tmpl +16 -16
- package/commands/qc-report.md +302 -302
- package/commands/qc-report.tmpl +21 -21
- package/commands/qc-review.md +298 -298
- package/commands/qc-review.tmpl +17 -17
- package/commands/qc-run-test.md +337 -337
- package/commands/qc-run-test.tmpl +35 -35
- package/commands/refine-prd.md +428 -430
- package/commands/refine-prd.tmpl +62 -62
- package/commands/report-bug.md +351 -351
- package/commands/report-bug.tmpl +70 -70
- package/commands/review-code.md +364 -364
- package/commands/review-code.tmpl +39 -39
- package/commands/review-context.md +578 -580
- package/commands/review-context.tmpl +212 -212
- package/commands/review-tech-docs.md +427 -427
- package/commands/review-tech-docs.tmpl +146 -146
- package/commands/setup-ai-first.md +239 -239
- package/commands/setup-ai-first.tmpl +133 -133
- package/commands/sync.md +145 -145
- package/commands/sync.tmpl +93 -93
- package/commands/update-framework.md +88 -88
- package/commands/update-framework.tmpl +36 -36
- package/commands/validate-traces.md +381 -381
- package/commands/validate-traces.tmpl +100 -100
- package/core/FRAMEWORK_VERSION +1 -1
- package/core/commands/debug.md +436 -436
- package/core/commands/define-product.md +350 -345
- package/core/commands/dev-gen-test.md +365 -365
- package/core/commands/dev-run-test.md +376 -376
- package/core/commands/dev-smoke-test.md +341 -341
- package/core/commands/fix-bug.md +403 -403
- package/core/commands/generate-bdd.md +513 -513
- package/core/commands/generate-code.md +481 -483
- package/core/commands/generate-design-spec.md +497 -497
- package/core/commands/generate-prd.md +452 -400
- package/core/commands/generate-spec-manifest.md +340 -340
- package/core/commands/generate-tech-docs.md +365 -365
- package/core/commands/learn.md +347 -347
- package/core/commands/map-testids.md +322 -322
- package/core/commands/propose-scenario.md +335 -335
- package/core/commands/qc-analyze.md +323 -324
- package/core/commands/qc-design-test.md +304 -304
- package/core/commands/qc-plan.md +297 -297
- package/core/commands/qc-report.md +302 -302
- package/core/commands/qc-review.md +298 -298
- package/core/commands/qc-run-test.md +337 -337
- package/core/commands/refine-prd.md +428 -430
- package/core/commands/report-bug.md +351 -351
- package/core/commands/review-code.md +364 -364
- package/core/commands/review-context.md +578 -580
- package/core/commands/review-tech-docs.md +427 -427
- package/core/commands/setup-ai-first.md +239 -239
- package/core/commands/sync.md +145 -145
- package/core/commands/update-framework.md +88 -88
- package/core/commands/validate-traces.md +381 -381
- package/core/skills/code/SKILL.md +389 -389
- package/core/skills/debug/SKILL.md +391 -391
- package/core/skills/design-spec/SKILL.md +318 -318
- package/core/skills/discovery/SKILL.md +7 -547
- package/core/skills/prd/SKILL.md +298 -394
- package/core/skills/setup-ai-first/SKILL.md +80 -80
- package/core/skills/spec/SKILL.md +178 -178
- package/core/skills/test/SKILL.md +604 -604
- package/core/steps/capture-lesson.md +44 -44
- package/core/steps/context-loader.md +175 -175
- package/core/steps/gate.md +54 -54
- package/core/steps/report-footer.md +52 -52
- package/core/steps/review-fanout.md +85 -87
- package/core/steps/spawn-agent.md +45 -45
- package/core/steps/trace-mirror.md +21 -21
- package/core/templates/architecture.template.md +37 -37
- package/core/templates/design-spec.template.md +77 -77
- package/core/templates/platform-guide.template.md +47 -47
- package/core/templates/prd.template.md +107 -232
- package/core/templates/product-definition.template.md +101 -88
- package/core/templates/project-context.yaml +2 -2
- package/docs/01-getting-started/core-concepts.md +1 -1
- package/docs/01-getting-started/quickstart.md +7 -7
- package/docs/02-guides/developer/bdd-and-trace.md +1 -1
- package/docs/02-guides/developer/scenarios.md +5 -5
- package/docs/02-guides/product-owner/handoff-checklist.md +1 -1
- package/docs/02-guides/product-owner/scenarios.md +23 -23
- package/docs/02-guides/tester/bug-reporting.md +2 -2
- package/docs/02-guides/tester/reading-specs.md +2 -2
- package/docs/02-guides/tester/scenarios.md +1 -1
- package/docs/02-guides/tester/spec-manifest.md +3 -3
- package/docs/02-guides/tester/workflow.md +1 -1
- package/docs/03-concepts/architecture.md +3 -3
- package/docs/03-concepts/pipeline.md +3 -3
- package/docs/04-operations/publishing.md +20 -3
- package/docs/04-operations/sync-and-update.md +5 -5
- package/docs/05-reference/command-cheatsheet.md +2 -2
- package/docs/05-reference/commands.md +8 -8
- package/package.json +1 -1
- package/scripts/migrate-specs.js +5 -3
- package/scripts/rename-prd-files.js +174 -0
- package/skills/code/SKILL.md +389 -389
- package/skills/code/SKILL.tmpl +56 -56
- package/skills/debug/SKILL.md +391 -391
- package/skills/debug/SKILL.tmpl +60 -60
- package/skills/design-spec/SKILL.md +318 -318
- package/skills/design-spec/SKILL.tmpl +37 -37
- package/skills/discovery/SKILL.md +7 -547
- package/skills/discovery/SKILL.tmpl +7 -140
- package/skills/prd/SKILL.md +298 -394
- package/skills/prd/SKILL.tmpl +40 -151
- package/skills/setup-ai-first/SKILL.md +80 -80
- package/skills/setup-ai-first/SKILL.tmpl +28 -28
- package/skills/spec/SKILL.md +178 -178
- package/skills/spec/SKILL.tmpl +20 -20
- package/skills/test/SKILL.md +604 -604
- package/skills/test/SKILL.tmpl +44 -44
- package/steps/capture-lesson.md +44 -44
- package/steps/context-loader.md +175 -175
- package/steps/gate.md +54 -54
- package/steps/report-footer.md +52 -52
- package/steps/review-fanout.md +85 -87
- package/steps/spawn-agent.md +45 -45
- package/steps/trace-mirror.md +21 -21
- package/templates/architecture.template.md +37 -37
- package/templates/design-spec.template.md +77 -77
- package/templates/platform-guide.template.md +47 -47
- package/templates/prd.template.md +107 -232
- package/templates/product-definition.template.md +101 -88
- package/templates/project-context.yaml +2 -2
package/skills/code/SKILL.tmpl
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Sinh implementation code từ BDD spec đã duyệt kèm tag traceability, hoặc review code read-only đối chiếu spec compliance và quy tắc kiến trúc. 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
3
|
---
|
|
4
4
|
|
|
5
5
|
# Code Skills — Generate & Review
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Skill này xử lý `/generate-code` (implementation) và `/review-code` (review read-only).
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -15,10 +15,10 @@ This skill handles `/generate-code` (implementation) and `/review-code` (read-on
|
|
|
15
15
|
<!-- Directory: specs/*/*/bdd/*.feature -->
|
|
16
16
|
{{include:steps/gate.md}}
|
|
17
17
|
|
|
18
|
-
4.
|
|
19
|
-
-
|
|
18
|
+
4. Kiểm tra trace state có sẵn: đọc `.trace/{domain}/{prd-slug}/{UC-ID}.tsv` nếu tồn tại.
|
|
19
|
+
- Xác định: scenario mới vs. drifted (đã đổi) vs. synced (skip)
|
|
20
20
|
|
|
21
|
-
5.
|
|
21
|
+
5. Hiện **CHECKPOINT — Comprehension**:
|
|
22
22
|
```
|
|
23
23
|
I understand:
|
|
24
24
|
- Feature: {name} | Ticket: {TICKET_ID if known}
|
|
@@ -29,20 +29,20 @@ This skill handles `/generate-code` (implementation) and `/review-code` (read-on
|
|
|
29
29
|
|
|
30
30
|
Proceed? (Y/N)
|
|
31
31
|
```
|
|
32
|
-
|
|
32
|
+
Chờ xác nhận.
|
|
33
33
|
|
|
34
34
|
### Context Load
|
|
35
35
|
|
|
36
36
|
{{include:steps/context-loader.md}}
|
|
37
37
|
|
|
38
|
-
|
|
39
|
-
- `.feature`
|
|
40
|
-
- Tech doc `specs/{domain}/{prd-slug}/tech-docs/{UC-ID}-tech-design.md` (
|
|
41
|
-
-
|
|
38
|
+
Cũng đọc:
|
|
39
|
+
- File `.feature` (cần implement gì)
|
|
40
|
+
- Tech doc `specs/{domain}/{prd-slug}/tech-docs/{UC-ID}-tech-design.md` (nếu tồn tại)
|
|
41
|
+
- File entity/model có sẵn trong domain này (để theo pattern)
|
|
42
42
|
|
|
43
43
|
### Branch
|
|
44
44
|
|
|
45
|
-
|
|
45
|
+
Tạo feature branch:
|
|
46
46
|
```bash
|
|
47
47
|
git checkout -b feature/{TICKET_ID}-{slug}
|
|
48
48
|
# If no ticket ID: feature/{UC-ID}-{slug}
|
|
@@ -50,37 +50,37 @@ git checkout -b feature/{TICKET_ID}-{slug}
|
|
|
50
50
|
|
|
51
51
|
### Generate
|
|
52
52
|
|
|
53
|
-
|
|
53
|
+
Sinh code theo thứ tự layer (thích ứng theo stack của bạn):
|
|
54
54
|
|
|
55
|
-
**
|
|
55
|
+
**Cho một backend phân lớp điển hình (vd Controller → Service → Repository):**
|
|
56
56
|
|
|
57
|
-
1. **DTOs / Request-Response models** — input
|
|
58
|
-
2. **Domain entity / model** —
|
|
59
|
-
3. **Repository / Data Access** —
|
|
57
|
+
1. **DTOs / Request-Response models** — validate input, shape output
|
|
58
|
+
2. **Domain entity / model** — biểu diễn dữ liệu
|
|
59
|
+
3. **Repository / Data Access** — query, filter
|
|
60
60
|
4. **Service interface** — contract
|
|
61
|
-
5. **Service implementation** — business logic, `@Transactional`
|
|
62
|
-
6. **Facade interface** (
|
|
63
|
-
7. **Facade implementation** —
|
|
64
|
-
8. **Controller / Handler** — HTTP mapping, auth, `@trace`
|
|
61
|
+
5. **Service implementation** — business logic, `@Transactional` khi cần
|
|
62
|
+
6. **Facade interface** (nếu kiến trúc dùng facade layer) — contract orchestration
|
|
63
|
+
7. **Facade implementation** — orchestration liên-service
|
|
64
|
+
8. **Controller / Handler** — HTTP mapping, auth, tag `@trace`
|
|
65
65
|
|
|
66
|
-
**
|
|
66
|
+
**Quan trọng: Tag traceability trên mỗi controller method:**
|
|
67
67
|
```
|
|
68
68
|
# @trace.implements={UC-ID}-SC{N}
|
|
69
69
|
# @trace.source=specs/{domain}/{prd-slug}/bdd/{UC-ID}.feature
|
|
70
70
|
```
|
|
71
|
-
(
|
|
71
|
+
(Dùng cú pháp comment của ngôn ngữ bạn)
|
|
72
72
|
|
|
73
|
-
### Self-Review (3
|
|
73
|
+
### Self-Review (3 vòng)
|
|
74
74
|
|
|
75
|
-
|
|
76
|
-
- [ ]
|
|
77
|
-
- [ ] `@trace.implements`
|
|
78
|
-
- [ ]
|
|
79
|
-
- [ ] Error handling
|
|
80
|
-
- [ ]
|
|
81
|
-
- [ ]
|
|
75
|
+
Sau khi sinh, verify:
|
|
76
|
+
- [ ] Mỗi scenario trong .feature có controller endpoint tương ứng
|
|
77
|
+
- [ ] Tag `@trace.implements` trên mỗi endpoint
|
|
78
|
+
- [ ] Tôn trọng quy tắc layer kiến trúc (từ CLAUDE.md)
|
|
79
|
+
- [ ] Error handling khớp CLAUDE.md §error_handling
|
|
80
|
+
- [ ] Không magic number, không debug logging
|
|
81
|
+
- [ ] Theo coding standards từ CLAUDE.md
|
|
82
82
|
|
|
83
|
-
|
|
83
|
+
Nếu phát hiện issue → fix inline trước khi tiếp tục.
|
|
84
84
|
|
|
85
85
|
### Build Verify
|
|
86
86
|
|
|
@@ -88,11 +88,11 @@ If issues found → fix inline before proceeding.
|
|
|
88
88
|
{BUILD_COMMAND} # from project-context.yaml, max 3 retries
|
|
89
89
|
```
|
|
90
90
|
|
|
91
|
-
|
|
91
|
+
Nếu build fail: đọc lỗi, fix, retry. Sau 3 lần fail, report cho user kèm diagnosis.
|
|
92
92
|
|
|
93
93
|
### Write Trace State
|
|
94
94
|
|
|
95
|
-
|
|
95
|
+
Cập nhật `.trace/{domain}/{prd-slug}/{UC-ID}.tsv`:
|
|
96
96
|
```
|
|
97
97
|
UC-ID\tSC-ID\tsc_version\timplemented_by\tlast_updated
|
|
98
98
|
{UC-ID}\tSC1\t{hash of scenario text}\t{ControllerClass}.{method}\t{date}
|
|
@@ -119,38 +119,38 @@ git commit -m "{commit_format from CLAUDE.md}: {description}"
|
|
|
119
119
|
|
|
120
120
|
---
|
|
121
121
|
|
|
122
|
-
## /review-code —
|
|
122
|
+
## /review-code — Code Review chỉ-đọc
|
|
123
123
|
|
|
124
|
-
**
|
|
124
|
+
**QUAN TRỌNG**: Đây là READ-ONLY. Report issue nhưng KHÔNG sửa.
|
|
125
125
|
|
|
126
126
|
### Input
|
|
127
127
|
|
|
128
|
-
|
|
128
|
+
Nhận: UC-ID, file path, hoặc tên branch hiện tại.
|
|
129
129
|
|
|
130
130
|
### Review Dimensions
|
|
131
131
|
|
|
132
132
|
#### 1. Traceability
|
|
133
|
-
- [ ]
|
|
134
|
-
- [ ]
|
|
135
|
-
- [ ]
|
|
136
|
-
- [ ] `.trace/{domain}/{prd-slug}/{UC-ID}.tsv`
|
|
137
|
-
|
|
138
|
-
#### 2. Layer Architecture (
|
|
139
|
-
- [ ]
|
|
140
|
-
- [ ]
|
|
141
|
-
- [ ]
|
|
142
|
-
|
|
143
|
-
#### 3. Coding Standards (
|
|
144
|
-
- [ ]
|
|
145
|
-
- [ ] Response wrapper
|
|
146
|
-
- [ ]
|
|
147
|
-
- [ ]
|
|
148
|
-
- [ ]
|
|
149
|
-
- [ ]
|
|
133
|
+
- [ ] Mỗi controller endpoint có tag `@trace.implements`?
|
|
134
|
+
- [ ] Mỗi test file có tag `@trace.verifies`?
|
|
135
|
+
- [ ] Không có tag `@trace` ở layer không phải controller (Service, Repository, v.v.)?
|
|
136
|
+
- [ ] `.trace/{domain}/{prd-slug}/{UC-ID}.tsv` cập nhật chưa?
|
|
137
|
+
|
|
138
|
+
#### 2. Layer Architecture (từ CLAUDE.md)
|
|
139
|
+
- [ ] Mỗi class ở đúng layer?
|
|
140
|
+
- [ ] Phụ thuộc giữa layer đi đúng chiều?
|
|
141
|
+
- [ ] Không layer nào bị bypass (vd Controller gọi Repository trực tiếp)?
|
|
142
|
+
|
|
143
|
+
#### 3. Coding Standards (từ CLAUDE.md)
|
|
144
|
+
- [ ] Tuân theo naming convention?
|
|
145
|
+
- [ ] Response wrapper dùng nhất quán?
|
|
146
|
+
- [ ] Exception được throw (không bị nuốt hoặc tự build vào response)?
|
|
147
|
+
- [ ] Không magic number?
|
|
148
|
+
- [ ] Không dữ liệu nhạy cảm trong log?
|
|
149
|
+
- [ ] Annotation transaction đúng?
|
|
150
150
|
|
|
151
151
|
#### 4. Spec Compliance
|
|
152
|
-
- [ ]
|
|
153
|
-
- [ ]
|
|
152
|
+
- [ ] Mỗi scenario trong .feature có implementation?
|
|
153
|
+
- [ ] Không có endpoint không tài liệu (code không có spec backing)?
|
|
154
154
|
|
|
155
155
|
### Output
|
|
156
156
|
|
|
@@ -171,6 +171,6 @@ Critical: {X} | Major: {Y} | Minor: {Z}
|
|
|
171
171
|
Verdict: APPROVED ✅ | NEEDS_FIX ❌
|
|
172
172
|
```
|
|
173
173
|
|
|
174
|
-
|
|
174
|
+
Nếu `NEEDS_FIX`: liệt kê file cụ thể cần đổi và chạy `/fix-bug` hoặc sửa inline.
|
|
175
175
|
|
|
176
176
|
{{include:steps/report-footer.md}}
|