dw-kit 1.2.1 → 1.3.4

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 (59) hide show
  1. package/.claude/hooks/post-write.sh +64 -58
  2. package/.claude/hooks/pre-commit-gate.sh +96 -90
  3. package/.claude/hooks/privacy-block.sh +99 -94
  4. package/.claude/hooks/progress-ping.sh +53 -47
  5. package/.claude/hooks/safety-guard.sh +60 -54
  6. package/.claude/hooks/scout-block.sh +88 -82
  7. package/.claude/hooks/session-init.sh +6 -0
  8. package/.claude/hooks/stop-check.sh +88 -36
  9. package/.claude/hooks/telemetry-log.sh +34 -0
  10. package/.claude/rules/dw.md +138 -0
  11. package/.claude/settings.json +28 -1
  12. package/.claude/skills/dw-arch-review/SKILL.md +119 -119
  13. package/.claude/skills/dw-archive/SKILL.md +81 -81
  14. package/.claude/skills/dw-commit/SKILL.md +81 -81
  15. package/.claude/skills/dw-config-init/SKILL.md +91 -91
  16. package/.claude/skills/dw-config-validate/SKILL.md +75 -75
  17. package/.claude/skills/dw-dashboard/SKILL.md +209 -209
  18. package/.claude/skills/dw-debug/SKILL.md +97 -97
  19. package/.claude/skills/dw-decision/SKILL.md +116 -0
  20. package/.claude/skills/dw-docs-update/SKILL.md +125 -125
  21. package/.claude/skills/dw-estimate/SKILL.md +90 -90
  22. package/.claude/skills/dw-execute/SKILL.md +121 -98
  23. package/.claude/skills/dw-flow/SKILL.md +274 -274
  24. package/.claude/skills/dw-handoff/SKILL.md +92 -81
  25. package/.claude/skills/dw-kit-report/SKILL.md +152 -152
  26. package/.claude/skills/dw-log-work/SKILL.md +69 -69
  27. package/.claude/skills/dw-onboard/SKILL.md +201 -201
  28. package/.claude/skills/dw-plan/SKILL.md +222 -125
  29. package/.claude/skills/dw-prompt/SKILL.md +62 -62
  30. package/.claude/skills/dw-requirements/SKILL.md +98 -98
  31. package/.claude/skills/dw-research/SKILL.md +128 -114
  32. package/.claude/skills/dw-retroactive/SKILL.md +195 -311
  33. package/.claude/skills/dw-review/SKILL.md +66 -66
  34. package/.claude/skills/dw-rollback/SKILL.md +90 -90
  35. package/.claude/skills/dw-sprint-review/SKILL.md +99 -99
  36. package/.claude/skills/dw-task-init/SKILL.md +71 -59
  37. package/.claude/skills/dw-test-plan/SKILL.md +113 -113
  38. package/.claude/skills/dw-thinking/SKILL.md +70 -70
  39. package/.claude/skills/dw-upgrade/SKILL.md +72 -72
  40. package/.dw/core/PILLARS.md +122 -0
  41. package/.dw/core/ROLES.md +257 -257
  42. package/.dw/core/templates/v2/spec.md +68 -0
  43. package/.dw/core/templates/v2/tracking.md +62 -0
  44. package/.dw/core/v14-evaluation-protocol.md +118 -0
  45. package/CLAUDE.md +42 -39
  46. package/MIGRATION-v1.3.md +202 -0
  47. package/README.md +35 -6
  48. package/package.json +4 -2
  49. package/src/cli.mjs +29 -1
  50. package/src/commands/dashboard.mjs +116 -0
  51. package/src/commands/doctor.mjs +165 -149
  52. package/src/commands/init.mjs +339 -332
  53. package/src/commands/metrics.mjs +185 -0
  54. package/src/lib/active-index.mjs +87 -0
  55. package/src/lib/cut-analysis.mjs +240 -0
  56. package/src/lib/telemetry.mjs +80 -0
  57. package/.claude/rules/dw-core.md +0 -100
  58. package/.claude/rules/dw-skills.md +0 -53
  59. package/.claude/rules/workflow-rules.md +0 -77
@@ -1,98 +1,121 @@
1
- ---
2
- name: dw-execute
3
- description: "Thực hiện implementation theo plan đã được approve. Tuân thủ TDD, commit sau mỗi subtask. Chỉ dùng khi plan đã được duyệt."
4
- argument-hint: "[task-name]"
5
- ---
6
-
7
- # Thực Hiện Implementation
8
-
9
- Task: **$ARGUMENTS**
10
-
11
- ## Đọc Config
12
-
13
- Đọc `.dw/config/dw.config.yml` → lấy:
14
- - `paths.tasks` → location task docs
15
- - `quality.test_command` → lệnh chạy tests (nếu có)
16
- - `quality.lint_command` → lệnh chạy linter (nếu có)
17
- - `quality.block_on_fail` → có block commit khi fail không
18
- - `tracking.log_work` → ghi effort tracking không
19
- - `workflow.default_depth` → `thorough` = cần docs-update, review bắt buộc
20
-
21
- ## Trước Khi Bắt Đầu
22
-
23
- 1. Đọc `{paths.tasks}/$ARGUMENTS/$ARGUMENTS-plan.md`
24
- 2. Đọc `{paths.tasks}/$ARGUMENTS/$ARGUMENTS-context.md`
25
- 3. Đọc `{paths.tasks}/$ARGUMENTS/$ARGUMENTS-progress.md`
26
- 4. Xác nhận plan có `Trạng thái: Approved`
27
-
28
- Nếu plan chưa approved → **DỪNG**, yêu cầu approve trước.
29
- Nếu chưa có plan → **DỪNG**, yêu cầu chạy `/dw-plan $ARGUMENTS`.
30
- Nếu progress tiếp tục từ subtask cuối cùng chưa done.
31
-
32
- ## Quy Trình Cho MỖI Subtask
33
-
34
- ### Step 1: Chuẩn bị
35
- - Đọc subtask từ plan (mô tả, files, criteria)
36
- - Cập nhật progress: subtask → `in_progress`
37
-
38
- ### Step 2: Test First (TDD)
39
- - Viết test cho subtask (nếu applicable)
40
- - Chạy testconfirm FAIL (red)
41
- - Nếu test đã passkiểm tra lại, thể test sai
42
-
43
- ### Step 3: Implement
44
- - Code theo spec trong plan
45
- - Tuân thủ conventions trong `.claude/rules/code-style.md`
46
- - KHÔNG thay đổi scope ngoài plan
47
-
48
- ### Step 4: Verify
49
- - Chạy test → confirm PASS (green)
50
- - Nếu `quality.lint_command` không rỗng: chạy linter
51
- - Nếu `quality.block_on_fail = true` fail → DỪNG, fix trước
52
- - Nếu `quality.block_on_fail = false` cảnh báo, cho phép tiếp tục
53
-
54
- ### Step 5: Cập nhật Progress
55
- Cập nhật `{paths.tasks}/$ARGUMENTS/$ARGUMENTS-progress.md`:
56
- ```markdown
57
- | ST-N | [Subtask name] | Done | abc1234 | [ghi chú] |
58
- ```
59
-
60
- Nếu `tracking.log_work = true`, ghi effort thực tế vào:
61
- ```markdown
62
- ### Effort Log
63
- | Subtask | Estimate | Actual | Ghi chú |
64
- ```
65
-
66
- ### Step 6: Commit
67
- ```
68
- <type>(<scope>): <mô tả subtask>
69
-
70
- Subtask ST-N of $ARGUMENTS
71
- ```
72
-
73
- ## Khi Phát Hiện Vấn Đề
74
-
75
- ### Giả định sai / Scope thay đổi
76
- 1. **DỪNG** implementation ngay
77
- 2. Ghi vào progress → mục "Phát Hiện Mới"
78
- 3. Thông báo user: vấn đề gì, ảnh hưởng
79
- 4. Đề xuất: tiếp tục / cập nhật plan / thay đổi hướng
80
- 5. **CHỜ** quyết định từ user
81
-
82
- ### Test fail không nguyên nhân
83
- 1. KHÔNG sửa test để pass (trừ khi test sai)
84
- 2. Chạy `/dw-debug` nếu cần
85
- 3. Ghi vào progress nếu mất thời gian
86
-
87
- ### Conflict với code khác
88
- 1. Ghi vào progress
89
- 2. Thông báo user
90
- 3. Đề xuất giải quyết
91
-
92
- ## Khi Hoàn Thành Tất Cả Subtasks
93
-
94
- 1. Cập nhật progress: Trạng thái → `Done`
95
- 2. Tóm tắt: subtasks completed, commits, issues encountered
96
- 3. Luôn gợi ý: "Tiếp theo: `/dw-review $ARGUMENTS`"
97
- 4. Nếu `workflow.default_depth = thorough`: "Cần chạy `/dw-docs-update $ARGUMENTS`"
98
- 5. Nếu `tracking.log_work = true`: Hiển thị estimate vs actual, gợi ý `/dw-log-work $ARGUMENTS`
1
+ ---
2
+ name: dw:execute
3
+ description: "Thực hiện implementation theo plan đã được approve. Tuân thủ TDD, commit sau mỗi subtask. Chỉ dùng khi plan đã được duyệt."
4
+ argument-hint: "[task-name]"
5
+ ---
6
+
7
+ # Thực Hiện Implementation
8
+
9
+ Task: **$ARGUMENTS**
10
+
11
+ ## Đọc Config
12
+
13
+ Đọc `.dw/config/dw.config.yml` → lấy:
14
+ - `paths.tasks` → location task docs
15
+ - `quality.test_command` → lệnh chạy tests (nếu có)
16
+ - `quality.lint_command` → lệnh chạy linter (nếu có)
17
+ - `quality.block_on_fail` → có block commit khi fail không
18
+ - `tracking.log_work` → ghi effort tracking không
19
+ - `workflow.default_depth` → `thorough` = cần docs-update, review bắt buộc
20
+
21
+ ## Detect Task Format (v1 vs v2)
22
+
23
+ Kiểm tra `{paths.tasks}/$ARGUMENTS/`:
24
+ - **v2**: có `spec.md` + `tracking.md` → đọc/ghi 2 files này.
25
+ - **v1** (legacy): có `-context.md`/`-plan.md`/`-progress.md` → đọc/ghi bộ 3 files.
26
+
27
+ ## Trước Khi Bắt Đầu
28
+
29
+ **v2:**
30
+ 1. Đọc `{paths.tasks}/$ARGUMENTS/spec.md` Intent, Scope, Subtasks, Success Criteria, Research Findings.
31
+ 2. Đọc `{paths.tasks}/$ARGUMENTS/tracking.md` — Subtask Progress table, Changelog, Handoff Notes.
32
+ 3. Xác nhận `spec.md` frontmatter có `status: Approved`.
33
+
34
+ **v1:**
35
+ 1. Đọc `{paths.tasks}/$ARGUMENTS/$ARGUMENTS-plan.md`
36
+ 2. Đọc `{paths.tasks}/$ARGUMENTS/$ARGUMENTS-context.md`
37
+ 3. Đọc `{paths.tasks}/$ARGUMENTS/$ARGUMENTS-progress.md`
38
+ 4. Xác nhận plan `Trạng thái: Approved`
39
+
40
+ Nếu plan chưa approved **DỪNG**, yêu cầu approve trước.
41
+ Nếu chưa plan**DỪNG**, yêu cầu chạy `/dw:plan $ARGUMENTS`.
42
+ Nếu có progress → tiếp tục từ subtask cuối cùng chưa done.
43
+
44
+ ## Quy Trình Cho MỖI Subtask
45
+
46
+ ### Step 1: Chuẩn bị
47
+ - Đọc subtask từ plan (mô tả, files, criteria)
48
+ - Cập nhật progress: subtask → `in_progress`
49
+
50
+ ### Step 2: Test First (TDD)
51
+ - Viết test cho subtask (nếu applicable)
52
+ - Chạy testconfirm FAIL (red)
53
+ - Nếu test đã pass → kiểm tra lại, có thể test sai
54
+
55
+ ### Step 3: Implement
56
+ - Code theo spec trong plan
57
+ - Tuân thủ conventions trong `.claude/rules/code-style.md`
58
+ - KHÔNG thay đổi scope ngoài plan
59
+
60
+ ### Step 4: Verify
61
+ - Chạy test → confirm PASS (green)
62
+ - Nếu `quality.lint_command` không rỗng: chạy linter
63
+ - Nếu `quality.block_on_fail = true` fail DỪNG, fix trước
64
+ - Nếu `quality.block_on_fail = false` → cảnh báo, cho phép tiếp tục
65
+
66
+ ### Step 5: Cập nhật Progress
67
+ **v2**: Cập nhật `{paths.tasks}/$ARGUMENTS/tracking.md`:
68
+ - Update row trong section `## Subtask Progress` table với status `✅ Done`, Date, Notes (commit SHA).
69
+ - Append entry vào `## Changelog` theo format:
70
+ ```markdown
71
+ ### {date} — ST-N complete
72
+ **Actions taken:** ...
73
+ ```
74
+ - Update frontmatter `last_updated`.
75
+
76
+ **v1**: Cập nhật `{paths.tasks}/$ARGUMENTS/$ARGUMENTS-progress.md`:
77
+ ```markdown
78
+ | ST-N | [Subtask name] | Done | abc1234 | [ghi chú] |
79
+ ```
80
+
81
+ Nếu `tracking.log_work = true`, ghi effort thực tế:
82
+ - **v2**: thêm cột "Actual" vào Subtask Progress table hoặc ghi trong Changelog entry.
83
+ - **v1**:
84
+ ```markdown
85
+ ### Effort Log
86
+ | Subtask | Estimate | Actual | Ghi chú |
87
+ ```
88
+
89
+ ### Step 6: Commit
90
+ ```
91
+ <type>(<scope>): <mô tả subtask>
92
+
93
+ Subtask ST-N of $ARGUMENTS
94
+ ```
95
+
96
+ ## Khi Phát Hiện Vấn Đề
97
+
98
+ ### Giả định sai / Scope thay đổi
99
+ 1. **DỪNG** implementation ngay
100
+ 2. Ghi vào progress → mục "Phát Hiện Mới"
101
+ 3. Thông báo user: vấn đề gì, ảnh hưởng gì
102
+ 4. Đề xuất: tiếp tục / cập nhật plan / thay đổi hướng
103
+ 5. **CHỜ** quyết định từ user
104
+
105
+ ### Test fail không rõ nguyên nhân
106
+ 1. KHÔNG sửa test để pass (trừ khi test sai)
107
+ 2. Chạy `/dw:debug` nếu cần
108
+ 3. Ghi vào progress nếu mất thời gian
109
+
110
+ ### Conflict với code khác
111
+ 1. Ghi vào progress
112
+ 2. Thông báo user
113
+ 3. Đề xuất giải quyết
114
+
115
+ ## Khi Hoàn Thành Tất Cả Subtasks
116
+
117
+ 1. Cập nhật status: **v2** `tracking.md` frontmatter `status: Done` · **v1** progress.md `Trạng thái: Done`.
118
+ 2. Tóm tắt: subtasks completed, commits, issues encountered
119
+ 3. Luôn gợi ý: "Tiếp theo: `/dw:review $ARGUMENTS`"
120
+ 4. Nếu `workflow.default_depth = thorough`: "Cần chạy `/dw:docs-update $ARGUMENTS`"
121
+ 5. Nếu `tracking.log_work = true`: Hiển thị estimate vs actual, gợi ý `/dw:log-work $ARGUMENTS`