@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.
Files changed (162) hide show
  1. package/bin/index.js +12 -1
  2. package/commands/debug.md +436 -436
  3. package/commands/debug.tmpl +111 -111
  4. package/commands/define-product.md +350 -345
  5. package/commands/define-product.tmpl +69 -64
  6. package/commands/dev-gen-test.md +365 -365
  7. package/commands/dev-gen-test.tmpl +63 -63
  8. package/commands/dev-run-test.md +376 -376
  9. package/commands/dev-run-test.tmpl +74 -74
  10. package/commands/dev-smoke-test.md +341 -341
  11. package/commands/dev-smoke-test.tmpl +60 -60
  12. package/commands/fix-bug.md +403 -403
  13. package/commands/fix-bug.tmpl +78 -78
  14. package/commands/generate-bdd.md +513 -513
  15. package/commands/generate-bdd.tmpl +211 -211
  16. package/commands/generate-code.md +481 -483
  17. package/commands/generate-code.tmpl +179 -181
  18. package/commands/generate-design-spec.md +497 -497
  19. package/commands/generate-design-spec.tmpl +220 -220
  20. package/commands/generate-prd.md +452 -400
  21. package/commands/generate-prd.tmpl +50 -200
  22. package/commands/generate-spec-manifest.md +340 -340
  23. package/commands/generate-spec-manifest.tmpl +59 -59
  24. package/commands/generate-tech-docs.md +365 -365
  25. package/commands/generate-tech-docs.tmpl +84 -84
  26. package/commands/learn.md +347 -347
  27. package/commands/learn.tmpl +22 -22
  28. package/commands/map-testids.md +322 -322
  29. package/commands/map-testids.tmpl +41 -41
  30. package/commands/propose-scenario.md +335 -335
  31. package/commands/propose-scenario.tmpl +54 -54
  32. package/commands/qc-analyze.md +323 -324
  33. package/commands/qc-analyze.tmpl +42 -43
  34. package/commands/qc-design-test.md +304 -304
  35. package/commands/qc-design-test.tmpl +23 -23
  36. package/commands/qc-plan.md +297 -297
  37. package/commands/qc-plan.tmpl +16 -16
  38. package/commands/qc-report.md +302 -302
  39. package/commands/qc-report.tmpl +21 -21
  40. package/commands/qc-review.md +298 -298
  41. package/commands/qc-review.tmpl +17 -17
  42. package/commands/qc-run-test.md +337 -337
  43. package/commands/qc-run-test.tmpl +35 -35
  44. package/commands/refine-prd.md +428 -430
  45. package/commands/refine-prd.tmpl +62 -62
  46. package/commands/report-bug.md +351 -351
  47. package/commands/report-bug.tmpl +70 -70
  48. package/commands/review-code.md +364 -364
  49. package/commands/review-code.tmpl +39 -39
  50. package/commands/review-context.md +578 -580
  51. package/commands/review-context.tmpl +212 -212
  52. package/commands/review-tech-docs.md +427 -427
  53. package/commands/review-tech-docs.tmpl +146 -146
  54. package/commands/setup-ai-first.md +239 -239
  55. package/commands/setup-ai-first.tmpl +133 -133
  56. package/commands/sync.md +145 -145
  57. package/commands/sync.tmpl +93 -93
  58. package/commands/update-framework.md +88 -88
  59. package/commands/update-framework.tmpl +36 -36
  60. package/commands/validate-traces.md +381 -381
  61. package/commands/validate-traces.tmpl +100 -100
  62. package/core/FRAMEWORK_VERSION +1 -1
  63. package/core/commands/debug.md +436 -436
  64. package/core/commands/define-product.md +350 -345
  65. package/core/commands/dev-gen-test.md +365 -365
  66. package/core/commands/dev-run-test.md +376 -376
  67. package/core/commands/dev-smoke-test.md +341 -341
  68. package/core/commands/fix-bug.md +403 -403
  69. package/core/commands/generate-bdd.md +513 -513
  70. package/core/commands/generate-code.md +481 -483
  71. package/core/commands/generate-design-spec.md +497 -497
  72. package/core/commands/generate-prd.md +452 -400
  73. package/core/commands/generate-spec-manifest.md +340 -340
  74. package/core/commands/generate-tech-docs.md +365 -365
  75. package/core/commands/learn.md +347 -347
  76. package/core/commands/map-testids.md +322 -322
  77. package/core/commands/propose-scenario.md +335 -335
  78. package/core/commands/qc-analyze.md +323 -324
  79. package/core/commands/qc-design-test.md +304 -304
  80. package/core/commands/qc-plan.md +297 -297
  81. package/core/commands/qc-report.md +302 -302
  82. package/core/commands/qc-review.md +298 -298
  83. package/core/commands/qc-run-test.md +337 -337
  84. package/core/commands/refine-prd.md +428 -430
  85. package/core/commands/report-bug.md +351 -351
  86. package/core/commands/review-code.md +364 -364
  87. package/core/commands/review-context.md +578 -580
  88. package/core/commands/review-tech-docs.md +427 -427
  89. package/core/commands/setup-ai-first.md +239 -239
  90. package/core/commands/sync.md +145 -145
  91. package/core/commands/update-framework.md +88 -88
  92. package/core/commands/validate-traces.md +381 -381
  93. package/core/skills/code/SKILL.md +389 -389
  94. package/core/skills/debug/SKILL.md +391 -391
  95. package/core/skills/design-spec/SKILL.md +318 -318
  96. package/core/skills/discovery/SKILL.md +7 -547
  97. package/core/skills/prd/SKILL.md +298 -394
  98. package/core/skills/setup-ai-first/SKILL.md +80 -80
  99. package/core/skills/spec/SKILL.md +178 -178
  100. package/core/skills/test/SKILL.md +604 -604
  101. package/core/steps/capture-lesson.md +44 -44
  102. package/core/steps/context-loader.md +175 -175
  103. package/core/steps/gate.md +54 -54
  104. package/core/steps/report-footer.md +52 -52
  105. package/core/steps/review-fanout.md +85 -87
  106. package/core/steps/spawn-agent.md +45 -45
  107. package/core/steps/trace-mirror.md +21 -21
  108. package/core/templates/architecture.template.md +37 -37
  109. package/core/templates/design-spec.template.md +77 -77
  110. package/core/templates/platform-guide.template.md +47 -47
  111. package/core/templates/prd.template.md +107 -232
  112. package/core/templates/product-definition.template.md +101 -88
  113. package/core/templates/project-context.yaml +2 -2
  114. package/docs/01-getting-started/core-concepts.md +1 -1
  115. package/docs/01-getting-started/quickstart.md +7 -7
  116. package/docs/02-guides/developer/bdd-and-trace.md +1 -1
  117. package/docs/02-guides/developer/scenarios.md +5 -5
  118. package/docs/02-guides/product-owner/handoff-checklist.md +1 -1
  119. package/docs/02-guides/product-owner/scenarios.md +23 -23
  120. package/docs/02-guides/tester/bug-reporting.md +2 -2
  121. package/docs/02-guides/tester/reading-specs.md +2 -2
  122. package/docs/02-guides/tester/scenarios.md +1 -1
  123. package/docs/02-guides/tester/spec-manifest.md +3 -3
  124. package/docs/02-guides/tester/workflow.md +1 -1
  125. package/docs/03-concepts/architecture.md +3 -3
  126. package/docs/03-concepts/pipeline.md +3 -3
  127. package/docs/04-operations/publishing.md +20 -3
  128. package/docs/04-operations/sync-and-update.md +5 -5
  129. package/docs/05-reference/command-cheatsheet.md +2 -2
  130. package/docs/05-reference/commands.md +8 -8
  131. package/package.json +1 -1
  132. package/scripts/migrate-specs.js +5 -3
  133. package/scripts/rename-prd-files.js +174 -0
  134. package/skills/code/SKILL.md +389 -389
  135. package/skills/code/SKILL.tmpl +56 -56
  136. package/skills/debug/SKILL.md +391 -391
  137. package/skills/debug/SKILL.tmpl +60 -60
  138. package/skills/design-spec/SKILL.md +318 -318
  139. package/skills/design-spec/SKILL.tmpl +37 -37
  140. package/skills/discovery/SKILL.md +7 -547
  141. package/skills/discovery/SKILL.tmpl +7 -140
  142. package/skills/prd/SKILL.md +298 -394
  143. package/skills/prd/SKILL.tmpl +40 -151
  144. package/skills/setup-ai-first/SKILL.md +80 -80
  145. package/skills/setup-ai-first/SKILL.tmpl +28 -28
  146. package/skills/spec/SKILL.md +178 -178
  147. package/skills/spec/SKILL.tmpl +20 -20
  148. package/skills/test/SKILL.md +604 -604
  149. package/skills/test/SKILL.tmpl +44 -44
  150. package/steps/capture-lesson.md +44 -44
  151. package/steps/context-loader.md +175 -175
  152. package/steps/gate.md +54 -54
  153. package/steps/report-footer.md +52 -52
  154. package/steps/review-fanout.md +85 -87
  155. package/steps/spawn-agent.md +45 -45
  156. package/steps/trace-mirror.md +21 -21
  157. package/templates/architecture.template.md +37 -37
  158. package/templates/design-spec.template.md +77 -77
  159. package/templates/platform-guide.template.md +47 -47
  160. package/templates/prd.template.md +107 -232
  161. package/templates/product-definition.template.md +101 -88
  162. package/templates/project-context.yaml +2 -2
@@ -1,11 +1,11 @@
1
- # /dev-smoke-test — Smoke Test Live Service or App
1
+ # /dev-smoke-test — Smoke Test Service hoặc App đang chạy
2
2
 
3
- Use when service/app is **already running**. Different from `/dev-run-test` (no live server needed).
3
+ Dùng khi service/app **đang chạy sẵn**. Khác `/dev-run-test` (không cần live server).
4
4
 
5
5
  ## Gate
6
6
  {{include:steps/gate.md}}
7
7
 
8
- *Note: For this command, the target in Step 1 is a UC-ID from `$ARGUMENTS`. Context loading provides `conventions.service_run`, port information, and `tech_stack.module`.*
8
+ *Lưu ý: Với lệnh này, target Bước 1 một UC-ID từ `$ARGUMENTS`. Context loading cung cấp `conventions.service_run`, thông tin port, `tech_stack.module`.*
9
9
 
10
10
  ## Context
11
11
  {{include:steps/context-loader.md}}
@@ -14,7 +14,7 @@ Use when service/app is **already running**. Different from `/dev-run-test` (no
14
14
 
15
15
  ## Service Detection
16
16
 
17
- Read `active_module` from context. Use to select the correct dev-smoke-test approach.
17
+ Đọc `active_module` từ context. Dùng để chọn đúng cách dev-smoke-test.
18
18
 
19
19
  | Platform | Modules |
20
20
  |---|---|
@@ -24,11 +24,11 @@ Read `active_module` from context. Use to select the correct dev-smoke-test appr
24
24
 
25
25
  ---
26
26
 
27
- ## If `platform_type = backend`
27
+ ## Nếu `platform_type = backend`
28
28
 
29
- ### Phase 1 — Verify service is running
29
+ ### Phase 1 — Xác minh service đang chạy
30
30
 
31
- Read `conventions.service_run` from project-context.yaml to determine port.
31
+ Đọc `conventions.service_run` từ project-context.yaml để xác định port.
32
32
 
33
33
  ```bash
34
34
  # Try common health endpoints (use whichever applies):
@@ -37,20 +37,20 @@ curl -s http://localhost:{port}/actuator/health # Spring Boot
37
37
  curl -s http://localhost:{port}/ping # some frameworks
38
38
  ```
39
39
 
40
- If not running → "Start with `{conventions.service_run}` from project root."
40
+ Nếu chưa chạy → "Khởi động với `{conventions.service_run}` từ project root."
41
41
 
42
- ### Phase 2 — Identify endpoints
42
+ ### Phase 2 — Xác định endpoint
43
43
 
44
- From UC-ID → find controller/handler with `@trace.implements={UC-ID}`.
45
- List: method, path, required auth/role.
44
+ Từ UC-ID → tìm controller/handler `@trace.implements={UC-ID}`.
45
+ Liệt kê: method, path, auth/role bắt buộc.
46
46
 
47
- ### Phase 3 — Get auth token (if needed)
47
+ ### Phase 3 — Lấy auth token (nếu cần)
48
48
 
49
49
  ```
50
- Endpoint requires auth. Options:
51
- 1. Paste Bearer token (from Postman/DevTools)
52
- 2. Use test/dev token from local config
53
- 3. Skip — test public endpoints only
50
+ Endpoint yêu cầu auth. Lựa chọn:
51
+ 1. Dán Bearer token (từ Postman/DevTools)
52
+ 2. Dùng test/dev token từ local config
53
+ 3. Skip — chỉ test endpoint public
54
54
  ```
55
55
 
56
56
  ### Phase 4 — Run
@@ -67,21 +67,21 @@ curl -s -X POST "http://localhost:{port}/v1/{resource}" \
67
67
  -d '{"field1": "test_value"}'
68
68
  ```
69
69
 
70
- | Result | Meaning |
70
+ | Kết quả | Ý nghĩa |
71
71
  |--------|---------|
72
- | 200/201 + correct data | ✅ OK |
73
- | 200 + wrong data | ⚠️ Logic bug → /debug |
74
- | 400 | Wrong request body → check required fields |
75
- | 401 | Token expired or wrong config |
76
- | 403 | Wrong role → check auth rules |
72
+ | 200/201 + đúng data | ✅ OK |
73
+ | 200 + sai data | ⚠️ Logic bug → /debug |
74
+ | 400 | Sai request body → kiểm tra field bắt buộc |
75
+ | 401 | Token hết hạn hoặc sai config |
76
+ | 403 | Sai role → kiểm tra auth rule |
77
77
  | 500 | Server error → /debug |
78
- | Connection refused | Service not running |
78
+ | Connection refused | Service chưa chạy |
79
79
 
80
- ### If `active_module = context-engineering`
80
+ ### Nếu `active_module = context-engineering`
81
81
 
82
- #### Phase 1 — Verify pipeline entry point is reachable
82
+ #### Phase 1 — Xác minh entry point của pipeline tới được
83
83
 
84
- Run the prompt function directly with a minimal valid input:
84
+ Chạy prompt function trực tiếp với một input hợp lệ tối thiểu:
85
85
 
86
86
  ```bash
87
87
  # Python (pytest / script):
@@ -91,30 +91,30 @@ python -c "from {module}.{function} import {function}; print({function}(input='{
91
91
  {conventions.test_command} -m smoke -v
92
92
  ```
93
93
 
94
- #### Phase 2 — Verify output structure
94
+ #### Phase 2 — Xác minh cấu trúc output
95
95
 
96
- Check the output conforms to the expected schema:
96
+ Kiểm tra output khớp schema kỳ vọng:
97
97
 
98
98
  ```
99
99
  Expected output schema: {output fields from @trace or tech-doc}
100
100
  Actual output: {paste output here}
101
101
  ```
102
102
 
103
- #### Phase 3 — Interpret results
103
+ #### Phase 3 — Diễn giải kết quả
104
104
 
105
- | Result | Meaning |
105
+ | Kết quả | Ý nghĩa |
106
106
  |--------|---------|
107
- | Output matches schema | ✅ OK |
108
- | Output present but wrong format | ⚠️ Logic bug → /debug |
109
- | `APIError` / `AuthenticationError` | API key invalid or service unavailable |
110
- | `TokenLimitError` | Input too longcheck prompt template size |
111
- | Exception / traceback | Code error → /debug |
107
+ | Output khớp schema | ✅ OK |
108
+ | Output nhưng sai format | ⚠️ Logic bug → /debug |
109
+ | `APIError` / `AuthenticationError` | API key không hợp lệ hoặc service unavailable |
110
+ | `TokenLimitError` | Input quá dàikiểm tra kích thước prompt template |
111
+ | Exception / traceback | Lỗi code → /debug |
112
112
 
113
113
  ---
114
114
 
115
- ## If `platform_type = web-frontend`
115
+ ## Nếu `platform_type = web-frontend`
116
116
 
117
- ### Phase 1 — Verify dev server is running
117
+ ### Phase 1 — Xác minh dev server đang chạy
118
118
 
119
119
  ```bash
120
120
  # Linux / macOS:
@@ -126,9 +126,9 @@ curl -s -o NUL -w "%{http_code}" http://localhost:{port}
126
126
  # Should return 200. If not: start with {conventions.service_run} (e.g., npm run dev)
127
127
  ```
128
128
 
129
- ### Phase 2 — Run E2E smoke test
129
+ ### Phase 2 — Chạy E2E smoke test
130
130
 
131
- Identify E2E tool in the project (Playwright or Cypress):
131
+ Xác định E2E tool trong dự án (Playwright hoặc Cypress):
132
132
 
133
133
  ```bash
134
134
  # Playwright — run scenarios tagged with this UC:
@@ -138,25 +138,25 @@ npx playwright test --grep "{UC-ID}"
138
138
  npx cypress run --spec "cypress/e2e/{UC-ID}*"
139
139
  ```
140
140
 
141
- If no E2E tests exist yet open browser and manually verify:
142
- 1. Navigate to the route for this UC
143
- 2. Perform the main user action
144
- 3. Confirm the expected outcome is visible
141
+ Nếu chưa E2E testmở browser verify thủ công:
142
+ 1. Điều hướng tới route của UC này
143
+ 2. Thực hiện hành động chính của người dùng
144
+ 3. Xác nhận kết quả kỳ vọng hiển thị
145
145
 
146
- ### Phase 3 — Interpret results
146
+ ### Phase 3 — Diễn giải kết quả
147
147
 
148
- | Result | Meaning |
148
+ | Kết quả | Ý nghĩa |
149
149
  |--------|---------|
150
- | All E2E tests pass | ✅ OK |
150
+ | Tất cả E2E test pass | ✅ OK |
151
151
  | Assertion failed | ⚠️ Logic bug → /debug |
152
- | `ERR_CONNECTION_REFUSED` | Dev server not running |
153
- | API returns 4xx/5xx | Backend issuecheck backend service |
152
+ | `ERR_CONNECTION_REFUSED` | Dev server chưa chạy |
153
+ | API trả về 4xx/5xx | Vấn đề backend kiểm tra backend service |
154
154
 
155
155
  ---
156
156
 
157
- ## If `platform_type = mobile`
157
+ ## Nếu `platform_type = mobile`
158
158
 
159
- ### Phase 1 — Verify device/emulator is ready
159
+ ### Phase 1 — Xác minh device/emulator sẵn sàng
160
160
 
161
161
  ```bash
162
162
  # Flutter:
@@ -174,15 +174,15 @@ npx react-native run-ios # build + install on iOS simulator
174
174
  # Open Xcode → select simulator → Product → Run
175
175
  ```
176
176
 
177
- ### Phase 2 — Manual dev-smoke-test checklist
177
+ ### Phase 2 — Checklist dev-smoke-test thủ công
178
178
 
179
- For the UC under test, verify on device:
180
- 1. Navigate to the screen for this UC
181
- 2. Perform the main action from the `.feature` Scenario (`When` step)
182
- 3. Confirm the expected outcome is visible (`Then` step)
183
- 4. Check for any crash or unexpected error dialog
179
+ Với UC đang test, verify trên device:
180
+ 1. Điều hướng tới màn của UC này
181
+ 2. Thực hiện hành động chính từ Scenario `.feature` (step `When`)
182
+ 3. Xác nhận kết quả kỳ vọng hiển thị (step `Then`)
183
+ 4. Kiểm tra crash hoặc dialog lỗi bất ngờ không
184
184
 
185
- ### Phase 3 — Capture issues if found
185
+ ### Phase 3 — Bắt issue nếu phát hiện
186
186
 
187
187
  ```bash
188
188
  # Flutter:
@@ -195,7 +195,7 @@ adb logcat -d | grep -i "error\|exception\|crash"
195
195
  # Copy crash log from Xcode → Devices and Simulators → View Device Logs
196
196
  ```
197
197
 
198
- Paste output into `/debug`.
198
+ Dán output vào `/debug`.
199
199
 
200
200
  ---
201
201
 
@@ -212,6 +212,6 @@ Platform: {backend | web-frontend | mobile}
212
212
 
213
213
  Status legend: ✅ = OK | ⚠️ = Responded but wrong data / logic bug | ❌ = Error / not running
214
214
 
215
- Issues: {describe any failures}
216
- Next: /debug (paste error interactively) OR /fix-bug {TICKET_ID} OR ready to PR
215
+ Issues: { tả các failure}
216
+ Next: /debug (dán lỗi tương tác) HOẶC /fix-bug {TICKET_ID} HOẶC sẵn sàng PR
217
217
  ```