@edupia-tutor/spec-driven-docs 0.14.0 → 0.14.1

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 (141) hide show
  1. package/commands/debug.md +435 -435
  2. package/commands/debug.tmpl +111 -111
  3. package/commands/define-product.md +330 -327
  4. package/commands/define-product.tmpl +50 -47
  5. package/commands/dev-gen-test.md +364 -364
  6. package/commands/dev-gen-test.tmpl +63 -63
  7. package/commands/dev-run-test.md +375 -375
  8. package/commands/dev-run-test.tmpl +74 -74
  9. package/commands/dev-smoke-test.md +340 -340
  10. package/commands/dev-smoke-test.tmpl +60 -60
  11. package/commands/fix-bug.md +402 -402
  12. package/commands/fix-bug.tmpl +78 -78
  13. package/commands/generate-bdd.md +512 -512
  14. package/commands/generate-bdd.tmpl +211 -211
  15. package/commands/generate-code.md +480 -482
  16. package/commands/generate-code.tmpl +179 -181
  17. package/commands/generate-design-spec.md +495 -495
  18. package/commands/generate-design-spec.tmpl +219 -219
  19. package/commands/generate-prd.md +445 -396
  20. package/commands/generate-prd.tmpl +45 -198
  21. package/commands/generate-spec-manifest.md +337 -337
  22. package/commands/generate-spec-manifest.tmpl +57 -57
  23. package/commands/generate-tech-docs.md +364 -364
  24. package/commands/generate-tech-docs.tmpl +84 -84
  25. package/commands/learn.md +346 -346
  26. package/commands/learn.tmpl +22 -22
  27. package/commands/map-testids.md +321 -321
  28. package/commands/map-testids.tmpl +41 -41
  29. package/commands/propose-scenario.md +334 -334
  30. package/commands/propose-scenario.tmpl +54 -54
  31. package/commands/qc-analyze.md +322 -323
  32. package/commands/qc-analyze.tmpl +42 -43
  33. package/commands/qc-design-test.md +303 -303
  34. package/commands/qc-design-test.tmpl +23 -23
  35. package/commands/qc-plan.md +296 -296
  36. package/commands/qc-plan.tmpl +16 -16
  37. package/commands/qc-report.md +301 -301
  38. package/commands/qc-report.tmpl +21 -21
  39. package/commands/qc-review.md +297 -297
  40. package/commands/qc-review.tmpl +17 -17
  41. package/commands/qc-run-test.md +336 -336
  42. package/commands/qc-run-test.tmpl +35 -35
  43. package/commands/refine-prd.md +426 -428
  44. package/commands/refine-prd.tmpl +61 -61
  45. package/commands/report-bug.md +350 -350
  46. package/commands/report-bug.tmpl +70 -70
  47. package/commands/review-code.md +363 -363
  48. package/commands/review-code.tmpl +39 -39
  49. package/commands/review-context.md +577 -579
  50. package/commands/review-context.tmpl +212 -212
  51. package/commands/review-tech-docs.md +426 -426
  52. package/commands/review-tech-docs.tmpl +146 -146
  53. package/commands/setup-ai-first.md +237 -237
  54. package/commands/setup-ai-first.tmpl +131 -131
  55. package/commands/sync.md +145 -145
  56. package/commands/sync.tmpl +93 -93
  57. package/commands/update-framework.md +88 -88
  58. package/commands/update-framework.tmpl +36 -36
  59. package/commands/validate-traces.md +379 -379
  60. package/commands/validate-traces.tmpl +99 -99
  61. package/core/FRAMEWORK_VERSION +1 -1
  62. package/core/commands/debug.md +435 -435
  63. package/core/commands/define-product.md +330 -327
  64. package/core/commands/dev-gen-test.md +364 -364
  65. package/core/commands/dev-run-test.md +375 -375
  66. package/core/commands/dev-smoke-test.md +340 -340
  67. package/core/commands/fix-bug.md +402 -402
  68. package/core/commands/generate-bdd.md +512 -512
  69. package/core/commands/generate-code.md +480 -482
  70. package/core/commands/generate-design-spec.md +495 -495
  71. package/core/commands/generate-prd.md +445 -396
  72. package/core/commands/generate-spec-manifest.md +337 -337
  73. package/core/commands/generate-tech-docs.md +364 -364
  74. package/core/commands/learn.md +346 -346
  75. package/core/commands/map-testids.md +321 -321
  76. package/core/commands/propose-scenario.md +334 -334
  77. package/core/commands/qc-analyze.md +322 -323
  78. package/core/commands/qc-design-test.md +303 -303
  79. package/core/commands/qc-plan.md +296 -296
  80. package/core/commands/qc-report.md +301 -301
  81. package/core/commands/qc-review.md +297 -297
  82. package/core/commands/qc-run-test.md +336 -336
  83. package/core/commands/refine-prd.md +426 -428
  84. package/core/commands/report-bug.md +350 -350
  85. package/core/commands/review-code.md +363 -363
  86. package/core/commands/review-context.md +577 -579
  87. package/core/commands/review-tech-docs.md +426 -426
  88. package/core/commands/setup-ai-first.md +237 -237
  89. package/core/commands/sync.md +145 -145
  90. package/core/commands/update-framework.md +88 -88
  91. package/core/commands/validate-traces.md +379 -379
  92. package/core/skills/code/SKILL.md +388 -388
  93. package/core/skills/debug/SKILL.md +390 -390
  94. package/core/skills/design-spec/SKILL.md +316 -316
  95. package/core/skills/discovery/SKILL.md +7 -547
  96. package/core/skills/prd/SKILL.md +298 -394
  97. package/core/skills/setup-ai-first/SKILL.md +79 -79
  98. package/core/skills/spec/SKILL.md +176 -176
  99. package/core/skills/test/SKILL.md +602 -602
  100. package/core/steps/capture-lesson.md +44 -44
  101. package/core/steps/context-loader.md +174 -174
  102. package/core/steps/gate.md +54 -54
  103. package/core/steps/report-footer.md +52 -52
  104. package/core/steps/review-fanout.md +85 -87
  105. package/core/steps/spawn-agent.md +45 -45
  106. package/core/steps/trace-mirror.md +21 -21
  107. package/core/templates/architecture.template.md +37 -37
  108. package/core/templates/design-spec.template.md +77 -77
  109. package/core/templates/platform-guide.template.md +47 -47
  110. package/core/templates/prd.template.md +106 -231
  111. package/core/templates/product-definition.template.md +101 -88
  112. package/docs/04-operations/publishing.md +20 -3
  113. package/package.json +1 -1
  114. package/skills/code/SKILL.md +388 -388
  115. package/skills/code/SKILL.tmpl +56 -56
  116. package/skills/debug/SKILL.md +390 -390
  117. package/skills/debug/SKILL.tmpl +60 -60
  118. package/skills/design-spec/SKILL.md +316 -316
  119. package/skills/design-spec/SKILL.tmpl +36 -36
  120. package/skills/discovery/SKILL.md +7 -547
  121. package/skills/discovery/SKILL.tmpl +7 -140
  122. package/skills/prd/SKILL.md +298 -394
  123. package/skills/prd/SKILL.tmpl +40 -151
  124. package/skills/setup-ai-first/SKILL.md +79 -79
  125. package/skills/setup-ai-first/SKILL.tmpl +27 -27
  126. package/skills/spec/SKILL.md +176 -176
  127. package/skills/spec/SKILL.tmpl +18 -18
  128. package/skills/test/SKILL.md +602 -602
  129. package/skills/test/SKILL.tmpl +44 -44
  130. package/steps/capture-lesson.md +44 -44
  131. package/steps/context-loader.md +174 -174
  132. package/steps/gate.md +54 -54
  133. package/steps/report-footer.md +52 -52
  134. package/steps/review-fanout.md +85 -87
  135. package/steps/spawn-agent.md +45 -45
  136. package/steps/trace-mirror.md +21 -21
  137. package/templates/architecture.template.md +37 -37
  138. package/templates/design-spec.template.md +77 -77
  139. package/templates/platform-guide.template.md +47 -47
  140. package/templates/prd.template.md +106 -231
  141. package/templates/product-definition.template.md +101 -88
@@ -1,91 +1,91 @@
1
- # /propose-scenario — Propose a New BDD Scenario (Tester & QC-Facing)
1
+ # /propose-scenario — Đề xuất một BDD Scenario mới (cho Tester & QC)
2
2
 
3
- For **testers and QC** who discover an edge case not covered by existing BDD (e.g. a `DOC_GAPS`
4
- missing-coverage gap from `/qc-analyze`). Drafts a Gherkin scenario into a **proposals area** for
5
- PO/Dev to review and promote.
3
+ Dành cho **tester QC** phát hiện edge case chưa được BDD hiện tại phủ (vd một gap missing-coverage
4
+ `DOC_GAPS` từ `/qc-analyze`). Draft một Gherkin scenario vào **khu proposal** để
5
+ PO/Dev review promote.
6
6
 
7
- **Does NOT edit the canonical `.feature` file.** BDD is owned by PO/Dev — this command only writes
8
- a proposal. Promotion into the real BDD is a PO/Dev action.
7
+ **KHÔNG sửa file `.feature` canonical.** BDD do PO/Dev sở hữu lệnh này chỉ ghi
8
+ một proposal. Promote vào BDD thật hành động của PO/Dev.
9
9
 
10
- Usage: `/propose-scenario {UC-ID} {edge case description}`
11
- Example: `/propose-scenario FT-001 login with email that has trailing spaces should still succeed`
10
+ Usage: `/propose-scenario {UC-ID} {mô tả edge case}`
11
+ dụ: `/propose-scenario FT-001 login với email space cuối vẫn nên thành công`
12
12
 
13
13
  ## Gate
14
14
  {{include:steps/gate.md}}
15
15
 
16
- *Note: For this command, the target in Step 1 is a UC-ID from `$ARGUMENTS`. Resolve its `.feature` file (for vocabulary + existing scenarios) and its PRD.*
16
+ *Lưu ý: Với lệnh này, target Bước 1 một UC-ID từ `$ARGUMENTS`. Phân giải file `.feature` của (để lấy vocabulary + scenario có sẵn) PRD của nó.*
17
17
 
18
18
  ## Context
19
19
  {{include:steps/context-loader.md}}
20
20
 
21
21
  ---
22
22
 
23
- ## Step 1 — Resolve UC + Platform
23
+ ## Step 1 — Phân giải UC + Platform
24
24
 
25
- Locate (via `spec-manifest.yaml` if present, else `paths`):
26
- - `prd_path` + the UC's acceptance criteria list
27
- - `bdd_path` + `active_platform` (web / app / system) — to match scenario vocabulary and `@trace` tags
28
- - existing scenario titles for this UC (to avoid proposing a duplicate)
25
+ Định vị (qua `spec-manifest.yaml` nếu có, else `paths`):
26
+ - `prd_path` + danh sách acceptance criteria của UC
27
+ - `bdd_path` + `active_platform` (web / app / system) — để khớp vocabulary scenario tag `@trace`
28
+ - các tiêu đề scenario sẵn của UC này (để tránh đề xuất trùng)
29
29
 
30
- ## Step 2 — Coverage Decision (CRITICAL)
30
+ ## Step 2 — Quyết định Coverage (CRITICAL)
31
31
 
32
- A BDD scenario must trace to a PRD acceptance criterion. Determine which case applies:
32
+ Một BDD scenario phải trace tới một PRD acceptance criterion. Xác định case nào áp dụng:
33
33
 
34
- **Case A — behavior IS within an existing AC** (the AC implies it, BDD just lacks a scenario):
35
- This is a coverage gap. Proceed to draft the scenario (Step 3), mapped to that AC.
34
+ **Case A — behavior NẰM TRONG một AC có sẵn** (AC ngụ ý nó, BDD chỉ thiếu scenario):
35
+ Đây coverage gap. Tiếp tục draft scenario (Step 3), map tới AC đó.
36
36
 
37
- **Case B — behavior is NOT in any AC** (genuinely new requirement):
38
- Do **not** draft a BDD proposal (a scenario would have nothing to trace to). Instead **write a
39
- PRD change request file** so the PO actually sees it on `/sync` (do not just print it):
37
+ **Case B — behavior KHÔNG nằm trong AC nào** (requirement thực sự mới):
38
+ **Đừng** draft BDD proposal (scenario sẽ không để trace). Thay vào đó **ghi một
39
+ file PRD change request** để PO thực sự thấy trên `/sync` (đừng chỉ in ra):
40
40
 
41
- Write to `{paths.prd_change_requests_dir}/{UC-ID}-{slug}.md` (resolved to
42
- `{spec_source}/feedback/prd-change-requests/` in umbrella mode; create dir if needed):
41
+ Ghi vào `{paths.prd_change_requests_dir}/{UC-ID}-{slug}.md` (phân giải về
42
+ `{spec_source}/feedback/prd-change-requests/` umbrella mode; tạo dir nếu cần):
43
43
  ```
44
44
  # PRD Change Request — {UC-ID}: {short title}
45
45
 
46
- > ⚠️ New requirement found in test — NOT covered by any PRD AC (not a coverage gap).
46
+ > ⚠️ Requirement mới phát hiện trong test — KHÔNG được PRD AC nào phủ (không phải coverage gap).
47
47
  | Field | Value |
48
48
  |---|---|
49
49
  | UC / Ticket | {UC-ID} |
50
50
  | PRD | {prd_path} (v{prd_version}) |
51
- | Source | {BUG-ID if any | tester/QC observation} |
51
+ | Source | {BUG-ID nếu | quan sát của tester/QC} |
52
52
  | Requested by | tester/QC |
53
53
  | Status | Open |
54
54
 
55
55
  **Requested behavior:** {description}
56
- **Suggested AC (draft for PO):** "{draft AC text}"
57
- **Route to PO:** add/extend an AC in {prd_path} → `/refine-prd` → re-run `/generate-bdd` → dev `/generate-code`.
56
+ **Suggested AC (draft cho PO):** "{draft AC text}"
57
+ **Route to PO:** thêm/mở rộng một AC trong {prd_path} → `/refine-prd` → chạy lại `/generate-bdd` → dev `/generate-code`.
58
58
  ```
59
- Then go to Step 5 (handoff applies to this file too). Skip Step 3–4 (no BDD scenario for Case B).
59
+ Rồi sang Step 5 (handoff áp dụng cho file này luôn). Skip Step 3–4 (không BDD scenario cho Case B).
60
60
 
61
- If unsure which case → show the AC list and ask the tester which AC this maps to, or confirm it's new.
61
+ Nếu không chắc case nào hiện danh sách AC hỏi tester map tới AC nào, hoặc confirm là mới.
62
62
 
63
- ## Step 3 — Draft the Scenario (Case A only)
63
+ ## Step 3 — Draft Scenario (chỉ Case A)
64
64
 
65
- Write Gherkin consistent with `/generate-bdd` conventions for `active_platform`:
66
- - Use the platform vocabulary (web: clicks/sees; app: taps/sees; system: business events)
67
- - Include `@trace` tags: `@trace.uc={UC-ID}`, `@trace.ac={AC-N}`, plus `@proposed @from-test`
68
- - One focused scenario; concrete Given/When/Then; no implementation detail
65
+ Viết Gherkin nhất quán với convention của `/generate-bdd` cho `active_platform`:
66
+ - Dùng vocabulary platform (web: clicks/sees; app: taps/sees; system: business event)
67
+ - Gồm tag `@trace`: `@trace.uc={UC-ID}`, `@trace.ac={AC-N}`, cùng `@proposed @from-test`
68
+ - Một scenario tập trung; Given/When/Then cụ thể; không chi tiết implementation
69
69
 
70
- ## Step 4 — Write the Proposal
70
+ ## Step 4 — Ghi Proposal
71
71
 
72
- Write to `{paths.bdd_proposals_dir}/{UC-ID}-{slug}.md` (resolved to `{spec_source}/feedback/bdd-proposals/` in umbrella mode; create dir if needed).
73
- Do NOT touch the canonical `.feature`. The proposal doc contains the draft + review metadata
74
- (see Output). If the source was a bug, reference its `BUG-ID`.
72
+ Ghi vào `{paths.bdd_proposals_dir}/{UC-ID}-{slug}.md` (phân giải về `{spec_source}/feedback/bdd-proposals/` umbrella mode; tạo dir nếu cần).
73
+ KHÔNG đụng `.feature` canonical. Doc proposal chứa draft + metadata review
74
+ (xem Output). Nếu nguồn một bug, tham chiếu `BUG-ID` của nó.
75
75
 
76
- ## Step 5 — Handoff (so PO/Dev actually see it)
76
+ ## Step 5 — Handoff (để PO/Dev thực sự thấy)
77
77
 
78
- A proposal only reaches PO/Dev if it is **committed and pushed to the shared spec repo**.
78
+ Một proposal chỉ tới PO/Dev nếu được **commit push lên spec repo dùng chung**.
79
79
 
80
80
  ```bash
81
- cd {spec_source} # umbrella: the spec submodule; single-service: omit
81
+ cd {spec_source} # umbrella: spec submodule; single-service: bỏ
82
82
  git add feedback/bdd-proposals/{UC-ID}-{slug}.md
83
83
  git commit -m "qa(proposal): {UC-ID} — {title}"
84
- git push # → PO/Dev see it on their next /sync
84
+ git push # → PO/Dev thấy lần /sync tiếp theo
85
85
  ```
86
86
 
87
- - No push rights to the spec repo → open a PR / MR instead. Print this fallback.
88
- - For a **PRD change request** (Case B), commit the request file instead:
87
+ - Không quyền push spec repo → mở PR / MR thay vì. In fallback này.
88
+ - Với **PRD change request** (Case B), commit file request thay vì:
89
89
  ```bash
90
90
  cd {spec_source}
91
91
  git add feedback/prd-change-requests/{UC-ID}-{slug}.md
@@ -93,7 +93,7 @@ git push # → PO/Dev see it on their next /sync
93
93
  git push
94
94
  ```
95
95
 
96
- > PO/Dev are notified through their normal routine: `/sync` lists newly-pulled proposals.
96
+ > PO/Dev được thông báo qua routine bình thường: `/sync` liệt các proposal vừa pull về.
97
97
 
98
98
  ---
99
99
 
@@ -106,24 +106,24 @@ git push # → PO/Dev see it on their next /sync
106
106
 
107
107
  UC : {UC-ID} ({active_platform})
108
108
  Maps to AC : {AC-N} — "{AC text}"
109
- Source : {BUG-ID if any | tester observation}
109
+ Source : {BUG-ID nếu | quan sát tester}
110
110
 
111
- Proposed scenario (DRAFT — pending PO/Dev review):
111
+ Scenario đề xuất (DRAFT — chờ PO/Dev review):
112
112
  @proposed @from-test @trace.uc={UC-ID} @trace.ac={AC-N}
113
113
  Scenario: {title}
114
114
  Given {…}
115
115
  When {…}
116
116
  Then {…}
117
117
 
118
- For PO/Dev to promote:
119
- [ ] AC mapping correct? (or update PRD if requirement is actually new)
120
- [ ] Add scenario to {bdd_path} (edit, or re-run /generate-bdd if PRD changed)
121
- [ ] Then: /generate-code {UC-ID} + /dev-gen-test {UC-ID}
118
+ Để PO/Dev promote:
119
+ [ ] AC mapping đúng? (hoặc cập nhật PRD nếu requirement thực sự mới)
120
+ [ ] Thêm scenario vào {bdd_path} (sửa, hoặc chạy lại /generate-bdd nếu PRD đổi)
121
+ [ ] Rồi: /generate-code {UC-ID} + /dev-gen-test {UC-ID}
122
122
 
123
- Handoff : {✅ committed + pushed to spec repo | ⚠️ run git commands above / open a PR}
123
+ Handoff : {✅ committed + pushed to spec repo | ⚠️ chạy git command trên / mở PR}
124
124
 
125
125
  ---
126
- Status : ✅ Complete (read-only on canonical BDD — proposal only)
126
+ Status : ✅ Complete (read-only trên BDD canonical — chỉ proposal)
127
127
  Output Artifacts: created {paths.bdd_proposals_dir}/{UC-ID}-{slug}.md (pushed to shared spec repo)
128
- Next : PO/Dev see it on their next /sync → review & promote
128
+ Next : PO/Dev thấy lần /sync tiếp theo → review & promote
129
129
  ```