@educa-corp/sdd-framework 0.5.0 → 0.6.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 +113 -19
- package/bin/gate-trace.js +464 -0
- package/bin/index.js +418 -146
- package/bin/lint-trace.js +602 -0
- package/bin/self-check.js +376 -1
- package/bin/trace-schema.json +252 -2
- package/commands/debug.md +123 -511
- package/commands/debug.tmpl +3 -0
- package/commands/define-product.md +86 -510
- package/commands/dev-gen-test.md +86 -510
- package/commands/dev-run-test.md +86 -510
- package/commands/dev-smoke-test.md +86 -510
- package/commands/extend-prd.md +89 -510
- package/commands/extend-prd.tmpl +3 -0
- package/commands/fix-bug.md +118 -509
- package/commands/generate-architecture.md +94 -515
- package/commands/generate-architecture.tmpl +3 -0
- package/commands/generate-bdd.md +85 -509
- package/commands/generate-code.md +86 -510
- package/commands/generate-design-spec.md +86 -510
- package/commands/generate-prd.md +89 -510
- package/commands/generate-prd.tmpl +3 -0
- package/commands/generate-spec-manifest.md +86 -510
- package/commands/generate-tech-docs.md +86 -510
- package/commands/learn.md +172 -496
- package/commands/learn.tmpl +70 -3
- package/commands/map-testids.md +86 -510
- package/commands/propose-scenario.md +86 -510
- package/commands/qc-analyze.md +86 -510
- package/commands/qc-design-test.md +86 -510
- package/commands/qc-plan.md +86 -510
- package/commands/qc-report.md +86 -510
- package/commands/qc-review.md +86 -510
- package/commands/qc-run-test.md +86 -510
- package/commands/refine-prd.md +99 -520
- package/commands/refine-prd.tmpl +3 -0
- package/commands/report-bug.md +86 -510
- package/commands/review-code.md +123 -511
- package/commands/review-code.tmpl +3 -0
- package/commands/review-context.md +93 -514
- package/commands/review-context.tmpl +3 -0
- package/commands/review-tech-docs.md +90 -511
- package/commands/review-tech-docs.tmpl +3 -0
- package/commands/setup-ai-first.md +166 -138
- package/commands/setup-ai-first.tmpl +72 -0
- package/commands/sync.md +50 -106
- package/commands/sync.tmpl +48 -3
- package/commands/update-framework.md +16 -103
- package/commands/update-framework.tmpl +14 -0
- package/commands/validate-traces.md +153 -511
- package/commands/validate-traces.tmpl +67 -1
- package/core/FRAMEWORK_VERSION +1 -1
- package/core/README.md +20 -0
- package/core/commands/debug.md +123 -511
- package/core/commands/define-product.md +86 -510
- package/core/commands/dev-gen-test.md +86 -510
- package/core/commands/dev-run-test.md +86 -510
- package/core/commands/dev-smoke-test.md +86 -510
- package/core/commands/extend-prd.md +89 -510
- package/core/commands/fix-bug.md +118 -509
- package/core/commands/generate-architecture.md +94 -515
- package/core/commands/generate-bdd.md +85 -509
- package/core/commands/generate-code.md +86 -510
- package/core/commands/generate-design-spec.md +86 -510
- package/core/commands/generate-prd.md +89 -510
- package/core/commands/generate-spec-manifest.md +86 -510
- package/core/commands/generate-tech-docs.md +86 -510
- package/core/commands/learn.md +172 -496
- package/core/commands/map-testids.md +86 -510
- package/core/commands/propose-scenario.md +86 -510
- package/core/commands/qc-analyze.md +86 -510
- package/core/commands/qc-design-test.md +86 -510
- package/core/commands/qc-plan.md +86 -510
- package/core/commands/qc-report.md +86 -510
- package/core/commands/qc-review.md +86 -510
- package/core/commands/qc-run-test.md +86 -510
- package/core/commands/refine-prd.md +99 -520
- package/core/commands/report-bug.md +86 -510
- package/core/commands/review-code.md +123 -511
- package/core/commands/review-context.md +93 -514
- package/core/commands/review-tech-docs.md +90 -511
- package/core/commands/setup-ai-first.md +166 -138
- package/core/commands/sync.md +50 -106
- package/core/commands/update-framework.md +16 -103
- package/core/commands/validate-traces.md +153 -511
- package/core/hooks/data-guard.js +174 -83
- package/core/hooks/settings.json +2 -1
- package/core/rules/workflow.md +30 -4
- package/core/steps/capture-lesson.md +34 -1
- package/core/steps/context-loader.md +24 -3
- package/core/steps/gate.md +92 -35
- package/core/steps/report-footer.md +23 -0
- package/core/templates/README.md +24 -1
- package/core/templates/ci/trace-gate.yml +146 -0
- package/core/templates/hooks/pre-push +61 -0
- package/docs/02-concepts/architecture.md +25 -6
- package/docs/02-concepts/traceability.md +57 -0
- package/docs/03-guides/architect.md +63 -0
- package/docs/04-reference/commands.md +1 -1
- package/docs/04-reference/model-selection.md +32 -19
- package/docs/explain/21-validate-traces.md +2 -1
- package/docs/explain/27-learn.md +5 -3
- package/hooks/data-guard.js +174 -83
- package/hooks/settings.json +2 -1
- package/package.json +5 -2
- package/rules/workflow.md +30 -4
- package/steps/capture-lesson.md +34 -1
- package/steps/context-loader.md +24 -3
- package/steps/gate.md +92 -35
- package/steps/report-footer.md +23 -0
- package/templates/README.md +24 -1
- package/templates/ci/trace-gate.yml +146 -0
- package/templates/hooks/pre-push +61 -0
- package/scripts/init.sh +0 -49
- package/scripts/upgrade.sh +0 -94
|
@@ -119,6 +119,20 @@ Tóm tắt cho người dùng:
|
|
|
119
119
|
- **Updated commands** — file có nội dung thay đổi
|
|
120
120
|
- **Removed commands** — file bị xoá trong version mới
|
|
121
121
|
|
|
122
|
+
> **Từ v0.5.1, "Removed" là trạng thái CÓ THẬT.** Trước đó `installCore` chỉ copy, không có
|
|
123
|
+
> nhánh xoá nào — nên lệnh bị bỏ ở version mới nằm lại trong `.agent/commands/` và
|
|
124
|
+
> `.claude/commands/` **vĩnh viễn**: vẫn hiện trong menu `/`, vẫn chạy được, vẫn mang logic
|
|
125
|
+
> của version cũ, kể cả khi framework đã bỏ nó *vì nó sai*. Step này từng hứa báo cáo một
|
|
126
|
+
> trạng thái mà installer không thể tạo ra (GAPS-v3 G44).
|
|
127
|
+
> Giờ installer tự in ra ngay sau bước cài — đọc các dòng đó, chúng chính xác hơn `git diff`:
|
|
128
|
+
> ```
|
|
129
|
+
> 🗑️ {n} file framework đã bị BỎ ở version này — đã gỡ khỏi .agent/
|
|
130
|
+
> 🗑️ {n} shortcut của lệnh đã bị bỏ — đã gỡ khỏi .claude/commands/
|
|
131
|
+
> ⚠️ {n} file framework đã bị bỏ NHƯNG bạn đã sửa — GIỮ LẠI
|
|
132
|
+
> ```
|
|
133
|
+
> **Chỉ file còn nguyên bản mới bị gỡ.** File bạn đã sửa luôn được giữ + backup — thà để lại
|
|
134
|
+
> một file lạc còn hơn xoá thứ ai đó đã bỏ công viết.
|
|
135
|
+
|
|
122
136
|
Nếu có command mới xuất hiện (vd một slash command mới), nêu rõ để user biết nó giờ đã có.
|
|
123
137
|
|
|
124
138
|
**Kiểm file bị ghi đè.** `--init` copy `core/` → `.agent/` **vô điều kiện** — mọi thứ project đã sửa trong `.agent/` (trừ `project-context.yaml`) bị ghi đè. Từ v0.4.2 lệnh cài tự cứu chúng. Kiểm:
|
|
@@ -162,109 +176,8 @@ Sau migrate, nhắc chạy `/validate-traces` để reconcile sổ trace với b
|
|
|
162
176
|
|
|
163
177
|
## Output
|
|
164
178
|
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
Mọi report của lệnh phải kết thúc bằng section footer chuẩn này.
|
|
168
|
-
|
|
169
|
-
## Status Badge
|
|
170
|
-
|
|
171
|
-
Chọn một theo kết quả:
|
|
172
|
-
- `✅ Complete` — mọi bước thành công, không có vấn đề
|
|
173
|
-
- `❌ Failed` — lệnh không hoàn thành được do lỗi chặn
|
|
174
|
-
- `⚠️ Warnings` — hoàn thành nhưng có vấn đề không chặn, nên review lại
|
|
175
|
-
|
|
176
|
-
## Output Artifacts
|
|
177
|
-
|
|
178
|
-
Liệt kê mọi file được tạo hoặc sửa bởi lệnh này:
|
|
179
|
-
```
|
|
180
|
-
Output Artifacts:
|
|
181
|
-
{created|updated} {file-path} ({mô tả ngắn})
|
|
182
|
-
{created|updated} {file-path} ({mô tả ngắn})
|
|
183
|
-
```
|
|
184
|
-
|
|
185
|
-
Nếu không ghi file nào (vd: lệnh review hoặc phân tích) → ghi `Output Artifacts: none (read-only)`.
|
|
186
|
-
|
|
187
|
-
## Pipeline Position
|
|
188
|
-
|
|
189
|
-
In một sơ đồ pipeline một dòng, đánh dấu phase của lệnh HIỆN TẠI bằng `◀ bạn ở đây`,
|
|
190
|
-
để người dùng luôn thấy lệnh này nằm ở đâu trong luồng end-to-end:
|
|
191
|
-
|
|
192
|
-
```
|
|
193
|
-
Discovery → PRD → [Design Spec] → BDD → Tech Design → Code → Dev Self-Check → QC → Trace Audit
|
|
194
|
-
```
|
|
195
|
-
|
|
196
|
-
Tìm lệnh hiện tại trong bảng phase dưới đây và đánh dấu **phase của nó** trong sơ đồ trên:
|
|
197
|
-
|
|
198
|
-
| Phase | Commands |
|
|
199
|
-
|-------|----------|
|
|
200
|
-
| Discovery | `/define-product` |
|
|
201
|
-
| PRD | `/generate-prd` · `/extend-prd` · `/refine-prd` · `/review-context` (PRD) |
|
|
202
|
-
| Design Spec | `/generate-design-spec` |
|
|
203
|
-
| BDD | `/generate-bdd` · `/review-context` (BDD) |
|
|
204
|
-
| Tech Design | `/generate-tech-docs` · `/map-testids` · `/review-tech-docs` |
|
|
205
|
-
| Code | `/generate-code` · `/review-code` |
|
|
206
|
-
| Dev Self-Check | `/dev-gen-test` · `/dev-run-test` · `/dev-smoke-test` |
|
|
207
|
-
| QC | `/qc-analyze` · `/qc-plan` · `/qc-design-test` · `/qc-review` · `/qc-run-test` · `/qc-report` |
|
|
208
|
-
| Trace Audit | `/validate-traces` |
|
|
209
|
-
|
|
210
|
-
Với **lệnh review**, thêm vòng review 3 bước và đánh dấu bước hiện tại, vd:
|
|
211
|
-
`Vòng review: [① phân tích ◀] → ② Review Board → ③ --resume`.
|
|
212
|
-
|
|
213
|
-
**Lệnh xuyên suốt** (`/sync`, `/update-framework`, `/fix-bug`, `/debug`, `/learn`,
|
|
214
|
-
`/report-bug`, `/propose-scenario`, `/generate-spec-manifest`) nằm ngoài pipeline tuyến tính —
|
|
215
|
-
**bỏ hẳn dòng Pipeline** cho các lệnh này (đừng cố nhét chúng vào sơ đồ).
|
|
216
|
-
|
|
217
|
-
## Gợi ý lệnh tiếp theo
|
|
218
|
-
|
|
219
|
-
Gợi ý lệnh kế tiếp hợp lý theo phase của workflow:
|
|
220
|
-
|
|
221
|
-
| Lệnh hiện tại | Gợi ý lệnh tiếp theo |
|
|
222
|
-
|-------------------------|-----------------------------------------------|
|
|
223
|
-
| /setup-ai-first | `/define-product` để bắt đầu feature đầu tiên |
|
|
224
|
-
| /define-product | `/generate-prd {product-definition-file}` |
|
|
225
|
-
| /generate-prd | `/refine-prd {prd-file}` rồi `/review-context {prd-file}` |
|
|
226
|
-
| /extend-prd | `/refine-prd {prd-file}` (soi phần vừa thêm) rồi `/review-context {prd-file}` → PO duyệt → `/generate-bdd` **chỉ cho UC MỚI**; UC cũ dùng `/validate-traces --realign-prd-version {UC-ID}` |
|
|
227
|
-
| /refine-prd | Mở Review Board → cập nhật PRD → `/review-context {prd-file}` |
|
|
228
|
-
| /review-context (PRD) | Khi 0 critical → PO đặt `Status: approved`, rồi FE/App: `/generate-design-spec {prd-file}` (→ design sign-off → BDD); BE: `/generate-bdd {prd-file}`. Còn critical/NEEDS_FIX → sửa PRD (giữ draft) |
|
|
229
|
-
| /generate-design-spec | Designer review → xác nhận link Figma → PO + Designer sign-off → `/generate-bdd {prd-file}` |
|
|
230
|
-
| /generate-bdd | `/review-context {feature-file}` để kiểm tra độ phủ |
|
|
231
|
-
| /review-context (BDD) | `/generate-tech-docs {UC-ID}` nếu APPROVED; sinh lại nếu NEEDS_FIX |
|
|
232
|
-
| /qc-analyze | `/qc-plan {UC-ID}` (xử lý các gap blocker 🔴 trước) |
|
|
233
|
-
| /qc-plan | `/qc-design-test {UC-ID}` |
|
|
234
|
-
| /qc-design-test | `/qc-review {UC-ID}` (review test-case) |
|
|
235
|
-
| /qc-review (test-case) | `/qc-run-test {UC-ID}` nếu APPROVED; sửa TC nếu NEEDS_FIX |
|
|
236
|
-
| /qc-run-test | `/qc-report {UC-ID}` rồi `/qc-review {UC-ID}` (review script) |
|
|
237
|
-
| /qc-review (script) | `/qc-report {UC-ID}` rồi tạo PR nếu APPROVED |
|
|
238
|
-
| /qc-report | `/validate-traces {UC-ID}` để làm mới Living Docs (qc_status) |
|
|
239
|
-
| /map-testids | `/qc-design-test {UC-ID}` (QC dựng Page Object từ contract §4.5.6 vừa ghi) |
|
|
240
|
-
| /generate-tech-docs | `/review-tech-docs {tech-design-file}` |
|
|
241
|
-
| /review-tech-docs | `/generate-code {feature-file}` nếu APPROVED; sửa doc nếu NEEDS_FIX |
|
|
242
|
-
| /generate-code | Lần gen đầu → `/review-code {UC-ID}`; gen lại → `/dev-gen-test {UC-ID}` |
|
|
243
|
-
| /dev-gen-test | `/dev-run-test {UC-ID}` |
|
|
244
|
-
| /dev-run-test (passing) | `/review-code {UC-ID}` |
|
|
245
|
-
| /dev-run-test (failing) | `/fix-bug {ticket-id}` hoặc `/debug {error}` |
|
|
246
|
-
| /review-code | `/dev-smoke-test {UC-ID}` hoặc tạo PR |
|
|
247
|
-
| /dev-smoke-test | Tạo PR và link tới ticket |
|
|
248
|
-
| /validate-traces | **Cờ 🔴 trước (chặn PR):** SEAM_UNWIRED → nối binding sang class thật, xoá/thay stub · STUB_UNRESOLVED → `/generate-code {owner_uc}` (lấp logic tại chỗ + xoá hàm song song) · ORPHANED/TRACE_ORPHAN → quyết định thủ công (xoá code+test, đưa scenario trở lại `.feature`, hoặc sửa `sc_id` của tag). **Rồi:** DRIFT/UNTRACKED → `/generate-code {UC-ID}` · BDD_DRIFT → `/generate-code {feature-file}` · tech-doc lỗi thời vs BDD → `/generate-tech-docs` → `/review-tech-docs` · PRD drift → `/generate-bdd {prd-file}` · GAP → `/dev-gen-test {UC-ID}`. **Chỉ tạo PR khi mọi cờ 🔴 = 0** |
|
|
249
|
-
| /fix-bug | `/dev-run-test {UC-ID}` (dev_selftest vừa reset về not_run) → tạo PR; nếu fix một `{BUG-ID}` → QC chạy `/qc-run-test {UC-ID}` để verify + đóng bug |
|
|
250
|
-
| /debug | `/fix-bug {ticket-id}` nếu cần sửa |
|
|
251
|
-
| /report-bug | Gửi cho dev (`/fix-bug {BUG-ID}`); nếu thiếu coverage → `/propose-scenario {UC-ID}` |
|
|
252
|
-
| /propose-scenario | **Case A** (thiếu scenario cho AC có sẵn) → báo PO/Dev review trong `feedback/bdd-proposals/`; `/generate-bdd` tự chèn khi `Status: accepted`. **Case B** (requirement mới) → `feedback/prd-change-requests/` — PO phải đưa vào PRD trước, KHÔNG tự vào BDD được; `/validate-traces` nhắc lại kèm số ngày chờ chừng nào `Status: Open` |
|
|
253
|
-
| /learn | Tiếp tục làm việc — lesson áp dụng ở lệnh kế tiếp |
|
|
254
|
-
| /sync | `/validate-traces` để xem độ phủ đầy đủ; xử lý mọi `📥 tester feedback` được nêu |
|
|
255
|
-
| /update-framework | Review `git diff .agent/`, commit; `/sync` để đồng bộ nội dung dự án |
|
|
256
|
-
|
|
257
|
-
Định dạng footer như sau:
|
|
258
|
-
```
|
|
259
|
-
---
|
|
260
|
-
Status : {badge}
|
|
261
|
-
{khối Output Artifacts}
|
|
262
|
-
Pipeline : Discovery → PRD → [BDD ◀ bạn ở đây] → Tech Design → Code → Dev Self-Check → QC → Trace Audit
|
|
263
|
-
(lệnh review) Vòng review: [① phân tích ◀] → ② Review Board → ③ --resume
|
|
264
|
-
Next : {lệnh gợi ý kèm ví dụ tham số}
|
|
265
|
-
```
|
|
266
|
-
*(Bỏ dòng `Pipeline` cho các lệnh xuyên suốt liệt kê ở trên.)*
|
|
267
|
-
|
|
179
|
+
**Đọc `.agent/steps/report-footer.md`** và áp đúng khuôn footer trong đó (Status Badge ·
|
|
180
|
+
Output Artifacts · Next) cho report cuối, kèm khối bên dưới.
|
|
268
181
|
|
|
269
182
|
```
|
|
270
183
|
/update-framework — v{current} → v{latest}
|