dw-kit 1.9.1 → 1.9.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 (48) hide show
  1. package/.claude/agents/planner.md +100 -100
  2. package/.claude/agents/quality-checker.md +86 -86
  3. package/.claude/agents/researcher.md +93 -93
  4. package/.claude/agents/reviewer.md +126 -126
  5. package/.claude/hooks/supply-chain-scan.sh +0 -0
  6. package/.claude/rules/code-style.md +37 -37
  7. package/.claude/settings.json +2 -28
  8. package/.claude/skills/dw-plan/template-plan.md +47 -47
  9. package/.claude/skills/dw-research/template-research.md +51 -51
  10. package/.claude/skills/dw-review/checklist.md +88 -88
  11. package/.claude/skills/dw-thinking/THINKING.md +91 -91
  12. package/.claude/templates/agent-report.md +35 -35
  13. package/.claude/templates/en/task-context.md +77 -73
  14. package/.claude/templates/en/task-plan.md +83 -79
  15. package/.claude/templates/en/task-progress.md +69 -65
  16. package/.claude/templates/pr-template.md +56 -56
  17. package/.claude/templates/task-context.md +77 -73
  18. package/.claude/templates/task-plan.md +83 -79
  19. package/.claude/templates/task-progress.md +69 -65
  20. package/.dw/adapters/claude-cli/extensions/README.md +36 -36
  21. package/.dw/adapters/claude-cli/generated/README.md +23 -23
  22. package/.dw/adapters/claude-cli/overrides/README.md +37 -37
  23. package/.dw/adapters/generic/README.md +21 -21
  24. package/.dw/config/presets/enterprise.yml +52 -52
  25. package/.dw/config/presets/small-team.yml +39 -39
  26. package/.dw/config/presets/solo-quick.yml +37 -37
  27. package/.dw/core/AGENTS.md +53 -53
  28. package/.dw/core/QUALITY.md +220 -220
  29. package/.dw/core/THINKING.md +126 -126
  30. package/.dw/core/WORKFLOW.md +17 -12
  31. package/.dw/core/templates/v2/spec.md +2 -0
  32. package/.dw/core/templates/v2/tracking.md +2 -0
  33. package/.dw/core/templates/vi/task-context.md +96 -92
  34. package/.dw/core/templates/vi/task-plan.md +97 -93
  35. package/.dw/core/templates/vi/task-progress.md +60 -56
  36. package/LICENSE +201 -201
  37. package/NOTICE +26 -26
  38. package/bin/dw.mjs +28 -28
  39. package/package.json +1 -1
  40. package/src/commands/claude-vn-fix.mjs +267 -267
  41. package/src/commands/prompt.mjs +112 -112
  42. package/src/commands/validate.mjs +102 -102
  43. package/src/lib/clipboard.mjs +24 -24
  44. package/src/lib/platform.mjs +39 -39
  45. package/src/lib/prompt-suggest.mjs +84 -84
  46. package/src/lib/ui.mjs +66 -66
  47. package/src/lib/update-checker.mjs +73 -73
  48. package/.dw/security/advisory-snapshot.json +0 -157
@@ -1,126 +1,126 @@
1
- <!-- core-version: 1.0 -->
2
-
3
- # Tư Duy Phản Biện, Hệ Thống, Đa Góc Nhìn & First Principles
4
-
5
- Framework tư duy cho cả người và AI agent khi research, plan, và implement.
6
-
7
- ---
8
-
9
- ## 1. First Principles Thinking
10
-
11
- **Mục đích**: Bỏ qua assumptions, trở về câu hỏi cơ bản nhất. Tránh "chúng tôi luôn làm vậy."
12
-
13
- ### Quy Trình
14
-
15
- 1. **Decompose**: Tách vấn đề thành các phần cơ bản nhất — không thể tách nhỏ hơn
16
- 2. **Question assumptions**: Mỗi assumption: "Điều này có đúng không? Có thể kiểm chứng được không?"
17
- 3. **Rebuild**: Từ những gì đã verify, build lại solution từ đầu
18
- 4. **Compare**: Solution mới có ưu việt hơn solution cũ không? Tại sao?
19
-
20
- ### Câu Hỏi First Principles
21
-
22
- - "Vấn đề thực sự cần giải quyết là gì?" (không phải symptom)
23
- - "Nếu không có bất kỳ constraint nào, solution tốt nhất là gì?"
24
- - "Constraint nào là thực sự hard, constraint nào là assumed?"
25
- - "Ai đang được served bởi solution này? Họ thực sự cần gì?"
26
-
27
- ---
28
-
29
- ## 2. Tư Duy Phản Biện (Critical Thinking)
30
-
31
- **Mục đích**: Không chấp nhận giả định một chiều. Đặt câu hỏi, xem xét rủi ro, phương án thay thế.
32
-
33
- ### Câu Hỏi Khi Research & Plan
34
-
35
- - **Giả định**: Những giả định nào đang coi là đúng? Nếu sai thì ảnh hưởng thế nào?
36
- - **Bằng chứng**: Kết luận dựa trên đâu (code, doc, đo lường)? Thiếu bằng chứng ở đâu?
37
- - **Edge cases**: Trường hợp biên nào có thể làm hỏng thiết kế? (null, empty, concurrent, rollback)
38
- - **Rủi ro**: Rủi ro kỹ thuật, vận hành, bảo mật? Xác suất và tác động?
39
- - **Phương án thay thế**: Còn cách nào khác? Trade-off so với approach hiện tại?
40
- - **Phản diện (Devil's advocate)**: Lý do mạnh nhất để KHÔNG làm theo approach đang chọn?
41
- - **Đơn giản hơn**: Có cách nào đơn giản hơn đạt cùng mục tiêu không?
42
-
43
- ### Áp Dụng Trong Task
44
-
45
- - **Research**: Ghi rõ "Giả định", "Hạn chế đã biết", "Chưa rõ / cần kiểm chứng"
46
- - **Plan**: Có mục "Rủi ro & Giả định" và "Phương án đã xem xét"
47
- - **Execute**: Phát hiện giả định sai → DỪNG, ghi Changelog, cập nhật plan
48
-
49
- ---
50
-
51
- ## 3. Tư Duy Hệ Thống (Systems Thinking)
52
-
53
- **Mục đích**: Xem task trong bối cảnh hệ thống lớn. Dependencies, tác động lan truyền, failure modes.
54
-
55
- ### Các Khía Cạnh Cần Xem Xét
56
-
57
- - **Dependencies**: Task này phụ thuộc vào gì? Ai phụ thuộc vào kết quả của task này?
58
- - **Boundaries**: Ranh giới rõ ràng chưa? Interfaces ổn định chưa?
59
- - **Data flow**: Dữ liệu đi từ đâu đến đâu? Thêm DB/cache/queue? Consistency?
60
- - **Feedback loops**: Thay đổi có tạo vòng lặp không? Cần giới hạn hay debounce?
61
- - **Failure modes**: Một phần lỗi → hệ thống còn lại ứng xử thế nào? Graceful degradation?
62
- - **Scale**: Khi tải tăng, điểm nghẽn ở đâu? N+1 queries, missing indexes, locks?
63
-
64
- ### Áp Dụng Trong Task
65
-
66
- - **Research**: Mô tả (hoặc diagram) luồng hiện tại và vị trí của task
67
- - **Plan**: Mục "Tác động hệ thống" — modules bị ảnh hưởng, API changes, migration
68
- - **Subtasks**: Tách rõ schema / service / route / frontend để review dependencies
69
-
70
- ---
71
-
72
- ## 4. Đa Góc Nhìn (Multiple Perspectives)
73
-
74
- **Mục đích**: Tránh optimize cho một role. Cân bằng nhu cầu nhiều bên liên quan.
75
-
76
- ### Bảng Góc Nhìn
77
-
78
- | Góc nhìn | Câu hỏi điển hình |
79
- |----------|-------------------|
80
- | **End user** | Dễ dùng không? Feature có match use case thực tế? |
81
- | **Developer** | Code dễ đọc, test được không? API nhất quán? |
82
- | **Security** | Ai được làm gì? Có lộ data không? Auth/authz đúng? Rate limit? |
83
- | **Ops/Vận hành** | Deploy thế nào? Migration cần gì? Metric/log/debug khi lỗi? |
84
- | **Business/Product** | Giải quyết đúng pain point chưa? Ship được từng phần? |
85
- | **Ngắn hạn vs dài hạn** | Ship nhanh vs kiến trúc bền vững. Tech debt chấp nhận được không? |
86
-
87
- ### Áp Dụng Trong Task
88
-
89
- - **Plan**: Mục "Góc nhìn & Trade-offs" — mỗi quyết định lớn, ghi tác động per role
90
- - **Acceptance criteria**: Có thể tách "User: ...", "Dev: ...", "Security: ..."
91
- - **Review**: Nếu chỉ đúng về kỹ thuật nhưng bỏ qua security/ops → bổ sung
92
-
93
- ---
94
-
95
- ## 5. Checklist Nhanh (Trước Khi Kết Thúc Mỗi Phase)
96
-
97
- ### Research
98
-
99
- - [ ] Đã ghi giả định và có thể sai không?
100
- - [ ] Đã ghi những gì chưa rõ / cần kiểm chứng?
101
- - [ ] Đã identify failure modes của kiến trúc hiện tại?
102
-
103
- ### Plan
104
-
105
- - [ ] Đã xem xét ≥2 approaches và so sánh trade-offs?
106
- - [ ] Có mục Rủi ro & Giả định?
107
- - [ ] Có mục Edge cases?
108
- - [ ] Có mục Tác động hệ thống?
109
- - [ ] Đã xem xét ≥2 góc nhìn (user, security, dev, ops)?
110
- - [ ] Devil's advocate: lý do mạnh nhất để không làm approach này?
111
-
112
- ### Execute
113
-
114
- - [ ] Có assumption nào bị chứng minh sai? → Ghi Changelog, cập nhật plan
115
- - [ ] Có scope thay đổi? → Cập nhật plan, hỏi human
116
-
117
- ---
118
-
119
- ## 6. Prompt Gợi Ý Cho Agent
120
-
121
- Khi giao task cho AI agent:
122
-
123
- > "Khi làm task này, áp dụng framework trong `core/THINKING.md`:
124
- > - Trước khi viết plan, liệt kê: (1) giả định đang dùng, (2) 2 rủi ro chính, (3) 1 phương án thay thế đã loại và lý do
125
- > - Xem xét tác động lên ít nhất 2 góc nhìn (vd: user + security)
126
- > - Nếu phát hiện giả định sai trong khi execute → dừng, ghi Changelog, hỏi"
1
+ <!-- core-version: 1.0 -->
2
+
3
+ # Tư Duy Phản Biện, Hệ Thống, Đa Góc Nhìn & First Principles
4
+
5
+ Framework tư duy cho cả người và AI agent khi research, plan, và implement.
6
+
7
+ ---
8
+
9
+ ## 1. First Principles Thinking
10
+
11
+ **Mục đích**: Bỏ qua assumptions, trở về câu hỏi cơ bản nhất. Tránh "chúng tôi luôn làm vậy."
12
+
13
+ ### Quy Trình
14
+
15
+ 1. **Decompose**: Tách vấn đề thành các phần cơ bản nhất — không thể tách nhỏ hơn
16
+ 2. **Question assumptions**: Mỗi assumption: "Điều này có đúng không? Có thể kiểm chứng được không?"
17
+ 3. **Rebuild**: Từ những gì đã verify, build lại solution từ đầu
18
+ 4. **Compare**: Solution mới có ưu việt hơn solution cũ không? Tại sao?
19
+
20
+ ### Câu Hỏi First Principles
21
+
22
+ - "Vấn đề thực sự cần giải quyết là gì?" (không phải symptom)
23
+ - "Nếu không có bất kỳ constraint nào, solution tốt nhất là gì?"
24
+ - "Constraint nào là thực sự hard, constraint nào là assumed?"
25
+ - "Ai đang được served bởi solution này? Họ thực sự cần gì?"
26
+
27
+ ---
28
+
29
+ ## 2. Tư Duy Phản Biện (Critical Thinking)
30
+
31
+ **Mục đích**: Không chấp nhận giả định một chiều. Đặt câu hỏi, xem xét rủi ro, phương án thay thế.
32
+
33
+ ### Câu Hỏi Khi Research & Plan
34
+
35
+ - **Giả định**: Những giả định nào đang coi là đúng? Nếu sai thì ảnh hưởng thế nào?
36
+ - **Bằng chứng**: Kết luận dựa trên đâu (code, doc, đo lường)? Thiếu bằng chứng ở đâu?
37
+ - **Edge cases**: Trường hợp biên nào có thể làm hỏng thiết kế? (null, empty, concurrent, rollback)
38
+ - **Rủi ro**: Rủi ro kỹ thuật, vận hành, bảo mật? Xác suất và tác động?
39
+ - **Phương án thay thế**: Còn cách nào khác? Trade-off so với approach hiện tại?
40
+ - **Phản diện (Devil's advocate)**: Lý do mạnh nhất để KHÔNG làm theo approach đang chọn?
41
+ - **Đơn giản hơn**: Có cách nào đơn giản hơn đạt cùng mục tiêu không?
42
+
43
+ ### Áp Dụng Trong Task
44
+
45
+ - **Research**: Ghi rõ "Giả định", "Hạn chế đã biết", "Chưa rõ / cần kiểm chứng"
46
+ - **Plan**: Có mục "Rủi ro & Giả định" và "Phương án đã xem xét"
47
+ - **Execute**: Phát hiện giả định sai → DỪNG, ghi Changelog, cập nhật plan
48
+
49
+ ---
50
+
51
+ ## 3. Tư Duy Hệ Thống (Systems Thinking)
52
+
53
+ **Mục đích**: Xem task trong bối cảnh hệ thống lớn. Dependencies, tác động lan truyền, failure modes.
54
+
55
+ ### Các Khía Cạnh Cần Xem Xét
56
+
57
+ - **Dependencies**: Task này phụ thuộc vào gì? Ai phụ thuộc vào kết quả của task này?
58
+ - **Boundaries**: Ranh giới rõ ràng chưa? Interfaces ổn định chưa?
59
+ - **Data flow**: Dữ liệu đi từ đâu đến đâu? Thêm DB/cache/queue? Consistency?
60
+ - **Feedback loops**: Thay đổi có tạo vòng lặp không? Cần giới hạn hay debounce?
61
+ - **Failure modes**: Một phần lỗi → hệ thống còn lại ứng xử thế nào? Graceful degradation?
62
+ - **Scale**: Khi tải tăng, điểm nghẽn ở đâu? N+1 queries, missing indexes, locks?
63
+
64
+ ### Áp Dụng Trong Task
65
+
66
+ - **Research**: Mô tả (hoặc diagram) luồng hiện tại và vị trí của task
67
+ - **Plan**: Mục "Tác động hệ thống" — modules bị ảnh hưởng, API changes, migration
68
+ - **Subtasks**: Tách rõ schema / service / route / frontend để review dependencies
69
+
70
+ ---
71
+
72
+ ## 4. Đa Góc Nhìn (Multiple Perspectives)
73
+
74
+ **Mục đích**: Tránh optimize cho một role. Cân bằng nhu cầu nhiều bên liên quan.
75
+
76
+ ### Bảng Góc Nhìn
77
+
78
+ | Góc nhìn | Câu hỏi điển hình |
79
+ |----------|-------------------|
80
+ | **End user** | Dễ dùng không? Feature có match use case thực tế? |
81
+ | **Developer** | Code dễ đọc, test được không? API nhất quán? |
82
+ | **Security** | Ai được làm gì? Có lộ data không? Auth/authz đúng? Rate limit? |
83
+ | **Ops/Vận hành** | Deploy thế nào? Migration cần gì? Metric/log/debug khi lỗi? |
84
+ | **Business/Product** | Giải quyết đúng pain point chưa? Ship được từng phần? |
85
+ | **Ngắn hạn vs dài hạn** | Ship nhanh vs kiến trúc bền vững. Tech debt chấp nhận được không? |
86
+
87
+ ### Áp Dụng Trong Task
88
+
89
+ - **Plan**: Mục "Góc nhìn & Trade-offs" — mỗi quyết định lớn, ghi tác động per role
90
+ - **Acceptance criteria**: Có thể tách "User: ...", "Dev: ...", "Security: ..."
91
+ - **Review**: Nếu chỉ đúng về kỹ thuật nhưng bỏ qua security/ops → bổ sung
92
+
93
+ ---
94
+
95
+ ## 5. Checklist Nhanh (Trước Khi Kết Thúc Mỗi Phase)
96
+
97
+ ### Research
98
+
99
+ - [ ] Đã ghi giả định và có thể sai không?
100
+ - [ ] Đã ghi những gì chưa rõ / cần kiểm chứng?
101
+ - [ ] Đã identify failure modes của kiến trúc hiện tại?
102
+
103
+ ### Plan
104
+
105
+ - [ ] Đã xem xét ≥2 approaches và so sánh trade-offs?
106
+ - [ ] Có mục Rủi ro & Giả định?
107
+ - [ ] Có mục Edge cases?
108
+ - [ ] Có mục Tác động hệ thống?
109
+ - [ ] Đã xem xét ≥2 góc nhìn (user, security, dev, ops)?
110
+ - [ ] Devil's advocate: lý do mạnh nhất để không làm approach này?
111
+
112
+ ### Execute
113
+
114
+ - [ ] Có assumption nào bị chứng minh sai? → Ghi Changelog, cập nhật plan
115
+ - [ ] Có scope thay đổi? → Cập nhật plan, hỏi human
116
+
117
+ ---
118
+
119
+ ## 6. Prompt Gợi Ý Cho Agent
120
+
121
+ Khi giao task cho AI agent:
122
+
123
+ > "Khi làm task này, áp dụng framework trong `core/THINKING.md`:
124
+ > - Trước khi viết plan, liệt kê: (1) giả định đang dùng, (2) 2 rủi ro chính, (3) 1 phương án thay thế đã loại và lý do
125
+ > - Xem xét tác động lên ít nhất 2 góc nhìn (vd: user + security)
126
+ > - Nếu phát hiện giả định sai trong khi execute → dừng, ghi Changelog, hỏi"
@@ -1,10 +1,15 @@
1
- <!-- core-version: 1.0 -->
2
- <!-- last-updated: 2026-03-23 -->
1
+ <!-- core-version: 1.1 -->
2
+ <!-- last-updated: 2026-06-11 -->
3
3
 
4
4
  # dw-kit Workflow Methodology
5
5
 
6
6
  > **Platform-agnostic.** File này chứa methodology thuần — không có Claude syntax, không có tool names.
7
7
  > Platform-specific execution nằm trong `.dw/adapters/`.
8
+ >
9
+ > **Task doc lineage (canonical = v3, per ADR-0008 / ADR-0020):** mỗi task = **1 file `task.md`**
10
+ > với Sections (1 Snapshot · 2 Intent & Scope · 3 Subtask Tracker · 4 Timeline · 5 Handoff). Bộ
11
+ > 3-file đời cũ (`*-context/plan/progress.md`) và bộ 2-file v2 (`spec.md`+`tracking.md`) là **legacy** —
12
+ > chỉ dùng `dw task migrate` cho task cũ. Ở dưới khi nói "task doc" nghĩa là `task.md` v3.
8
13
 
9
14
  ---
10
15
 
@@ -45,7 +50,7 @@
45
50
  Mỗi task nên có depth riêng, không khóa cứng theo project:
46
51
 
47
52
  - **Default**: dùng `workflow.default_depth` từ `.dw/config/dw.config.yml`
48
- - **Override**: ghi trực tiếp trong task docs (ví dụ `context.md`)
53
+ - **Override**: ghi trực tiếp trong task doc (`task.md` frontmatter `depth:` hoặc Section 2 Intent)
49
54
  - **Rule**: task nào có API/DB/security scope thì có thể nâng lên `thorough` dù project đang `standard`
50
55
 
51
56
  Ưu tiên thực tế: `default_depth` giúp setup nhanh, còn execution quyết định theo rủi ro từng task.
@@ -70,9 +75,9 @@ Trả lời trước khi tiếp tục:
70
75
 
71
76
  ### Output Phase 1
72
77
 
73
- - [ ] Task docs tạo tại `{paths.tasks}/[task-name]/`
74
- - [ ] 3 files: `[name]-context.md`, `[name]-plan.md`, `[name]-progress.md`
75
- - [ ] Context file có: yêu cầu gốc + scope assessment + depth recommendation
78
+ - [ ] Task doc tạo tại `{paths.tasks}/[task-name]/task.md` (v3, 1-file — qua `dw task new`)
79
+ - [ ] Section 1 Snapshot + Section 2 Intent & Scope điền: yêu cầu gốc + scope assessment + depth recommendation
80
+ - [ ] Section 3 Subtask Tracker khởi tạo (status sống DUY NHẤT đây — chống drift)
76
81
 
77
82
  ### Readiness Check
78
83
 
@@ -118,7 +123,7 @@ Khi context thiếu, AI không dừng và chờ. AI:
118
123
 
119
124
  ### Output Phase 2
120
125
 
121
- - [ ] `[name]-context.md` điền đầy đủ
126
+ - [ ] `task.md` Section 2 (Intent & Scope) điền đầy đủ
122
127
  - [ ] Files liên quan: listed với vai trò rõ ràng
123
128
  - [ ] Kiến trúc hiện tại: documented (diagram nếu cần)
124
129
  - [ ] Gaps: identified, resolved hoặc flagged
@@ -181,7 +186,7 @@ Mỗi subtask phải:
181
186
 
182
187
  ### Output Phase 3
183
188
 
184
- - [ ] `[name]-plan.md` hoàn chỉnh
189
+ - [ ] `task.md` Section 2/3 (plan + subtasks) hoàn chỉnh
185
190
  - [ ] ≥2 approaches so sánh
186
191
  - [ ] Subtasks với dependencies, criteria, estimate
187
192
  - [ ] Risk table với mitigation
@@ -219,12 +224,12 @@ Nếu task không có tests: viết tests sau implement, nhưng TRƯỚC khi mar
219
224
  2. **Chỉ làm đúng scope của subtask** — không "while I'm here" fixes
220
225
  3. **Gặp ambiguity → DỪNG và hỏi** — không tự suy diễn cho thay đổi lớn
221
226
  4. **Phát hiện scope thay đổi → cập nhật plan, hỏi human** trước khi tiếp tục
222
- 5. **Mỗi subtask done = update progress file + commit**
227
+ 5. **Mỗi subtask done = update Section 3 Tracker + Section 4 Timeline + commit**
223
228
 
224
229
  ### Khi Gặp Blockers
225
230
 
226
231
  ```
227
- 1. Ghi blocker vào progress file (mô tả, context)
232
+ 1. Ghi blocker vào `task.md` Section 5 Handoff & Friction (mô tả, context)
228
233
  2. Xác định: blocker có thể self-resolve không?
229
234
  - Có: document approach, proceed
230
235
  - Không: DỪNG, escalate, ghi next-steps rõ ràng
@@ -234,7 +239,7 @@ Nếu task không có tests: viết tests sau implement, nhưng TRƯỚC khi mar
234
239
  ### Output Phase 4
235
240
 
236
241
  - [ ] Mỗi subtask: code implemented + tests pass
237
- - [ ] Progress file cập nhật sau mỗi subtask
242
+ - [ ] `task.md` Section 3 Tracker cập nhật sau mỗi subtask
238
243
  - [ ] Mỗi subtask: 1 commit (format chuẩn)
239
244
  - [ ] Không còn debug code (console.log, debugger)
240
245
 
@@ -333,7 +338,7 @@ Move task docs từ `{paths.tasks}/` → `{paths.tasks}/archive/` sau khi:
333
338
  ### Output Phase 6
334
339
 
335
340
  - [ ] Final commit(s) với message chuẩn
336
- - [ ] Progress file: trạng thái = Done, kết thúc date filled
341
+ - [ ] `task.md` Section 3 Tracker: tất cả subtask = Done, Section 4 Timeline có entry close-out
337
342
  - [ ] Effort log updated (nếu enabled)
338
343
  - [ ] Handoff notes ghi (nếu bàn giao)
339
344
  - [ ] Task archived (sau merge)
@@ -1,4 +1,6 @@
1
1
  ---
2
+ # ⚠️ LEGACY TEMPLATE — v2 (spec+tracking). Canonical = v3 task.md (ADR-0008 / ADR-0020).
3
+ # Kept only as reference for `dw task migrate`. Do not use for new tasks.
2
4
  task_id: {task-name}
3
5
  created: {YYYY-MM-DD}
4
6
  status: Draft | Approved | In Progress | Done
@@ -1,4 +1,6 @@
1
1
  ---
2
+ # ⚠️ LEGACY TEMPLATE — v2 (spec+tracking). Canonical = v3 task.md (ADR-0008 / ADR-0020).
3
+ # Kept only as reference for `dw task migrate`. Do not use for new tasks.
2
4
  task_id: {task-name}
3
5
  started: {YYYY-MM-DD}
4
6
  last_updated: {YYYY-MM-DD}
@@ -1,92 +1,96 @@
1
- # Context: [Task Name]
2
-
3
- ## Ngày khảo sát: [date]
4
- ## Depth: quick | standard | thorough
5
- ## Depth Source: default (from config) | override (task-specific)
6
- ## Override Reason (nếu có): [ví dụ: API contract change / DB migration / security-sensitive]
7
-
8
- ---
9
-
10
- ## Yêu Cầu
11
-
12
- > [Mô tả yêu cầu gốc. Nếu có BA: link đến requirements doc]
13
-
14
- **Acceptance criteria cấp cao:**
15
- - Given [trạng thái ban đầu], When [action], Then [kết quả mong đợi]
16
-
17
- ---
18
-
19
- ## Codebase Analysis
20
-
21
- ### Scope Assessment
22
-
23
- AI đã phân tích codebase và tìm thấy:
24
-
25
- **Files liên quan:**
26
- | # | File | Vai trò | Thay đổi? | Confidence |
27
- |---|------|---------|-----------|-----------|
28
- | 1 | | | Có / Không / Chưa rõ | HIGH / MED / LOW |
29
-
30
- > Xác nhận hoặc sửa danh sách trên trước khi tiếp tục.
31
-
32
- ### Kiến Trúc Hiện Tại
33
-
34
- ```
35
- [Mô tả luồng — AI điền sau khi research]
36
- Input [Module A] → [Module B] → Output
37
- ```
38
-
39
- ### Data Flow
40
-
41
- - **Input**: [từ đâu, format gì]
42
- - **Processing**: [logic chính]
43
- - **Output**: [đi đâu, format gì]
44
-
45
- ---
46
-
47
- ## Dependencies
48
-
49
- **Upstream** (task này phụ thuộc vào):
50
- - [ ] [Module/API] — [vai trò]
51
-
52
- **Downstream** (bị ảnh hưởng bởi task):
53
- - [ ] [Module/API] [ảnh hưởng thế nào]
54
-
55
- ---
56
-
57
- ## Patterns Phát Hiện
58
-
59
- | Pattern | Mô tả | Ví dụ (file:line) | Follow? |
60
- |---------|--------|-------------------|---------|
61
- | | | | Có / Không |
62
-
63
- ---
64
-
65
- ## Test Coverage
66
-
67
- - Tests hiện tại: [có/không, file nào]
68
- - Coverage: [% hoặc mô tả]
69
- - Gaps: [thiếu test ở đâu — cần bổ sung]
70
-
71
- ---
72
-
73
- ## Giả Định
74
-
75
- > AI tự động điền dựa trên codebase analysis. Xác nhận hoặc sửa.
76
-
77
- | # | Giả định | Nguồn | Có thể sai không? |
78
- |---|----------|-------|-------------------|
79
- | 1 | | Code analysis | Thấp / Trung / Cao |
80
-
81
- ---
82
-
83
- ## Chưa Cần Làm Trước Khi Plan
84
-
85
- - [ ] [Câu hỏi 1] — ảnh hưởng đến approach nếu sai
86
- - [ ] [Câu hỏi 2]
87
-
88
- ---
89
-
90
- ## Ghi Chú
91
-
92
- [Gotchas, tech debt liên quan, lịch sử thay đổi gần đây]
1
+ <!-- ⚠️ LEGACY TEMPLATE — do not use for new tasks. -->
2
+ <!-- Canonical task doc lineage = v3 (.dw/core/templates/v3/task.md), per ADR-0008 / ADR-0020. -->
3
+ <!-- Kept only as reference for `dw task migrate` + reading legacy task docs. -->
4
+
5
+ # Context: [Task Name]
6
+
7
+ ## Ngày khảo sát: [date]
8
+ ## Depth: quick | standard | thorough
9
+ ## Depth Source: default (from config) | override (task-specific)
10
+ ## Override Reason (nếu có): [ví dụ: API contract change / DB migration / security-sensitive]
11
+
12
+ ---
13
+
14
+ ## Yêu Cầu
15
+
16
+ > [Mô tả yêu cầu gốc. Nếu có BA: link đến requirements doc]
17
+
18
+ **Acceptance criteria cấp cao:**
19
+ - Given [trạng thái ban đầu], When [action], Then [kết quả mong đợi]
20
+
21
+ ---
22
+
23
+ ## Codebase Analysis
24
+
25
+ ### Scope Assessment
26
+
27
+ AI đã phân tích codebase và tìm thấy:
28
+
29
+ **Files liên quan:**
30
+ | # | File | Vai trò | Thay đổi? | Confidence |
31
+ |---|------|---------|-----------|-----------|
32
+ | 1 | | | Có / Không / Chưa rõ | HIGH / MED / LOW |
33
+
34
+ > Xác nhận hoặc sửa danh sách trên trước khi tiếp tục.
35
+
36
+ ### Kiến Trúc Hiện Tại
37
+
38
+ ```
39
+ [Mô tả luồng — AI điền sau khi research]
40
+ Input → [Module A] → [Module B] → Output
41
+ ```
42
+
43
+ ### Data Flow
44
+
45
+ - **Input**: [từ đâu, format gì]
46
+ - **Processing**: [logic chính]
47
+ - **Output**: [đi đâu, format gì]
48
+
49
+ ---
50
+
51
+ ## Dependencies
52
+
53
+ **Upstream** (task này phụ thuộc vào):
54
+ - [ ] [Module/API] — [vai trò]
55
+
56
+ **Downstream** (bị ảnh hưởng bởi task):
57
+ - [ ] [Module/API] — [ảnh hưởng thế nào]
58
+
59
+ ---
60
+
61
+ ## Patterns Phát Hiện
62
+
63
+ | Pattern | Mô tả | Ví dụ (file:line) | Follow? |
64
+ |---------|--------|-------------------|---------|
65
+ | | | | Có / Không |
66
+
67
+ ---
68
+
69
+ ## Test Coverage
70
+
71
+ - Tests hiện tại: [có/không, file nào]
72
+ - Coverage: [% hoặc mô tả]
73
+ - Gaps: [thiếu test ở đâu — cần bổ sung]
74
+
75
+ ---
76
+
77
+ ## Giả Định
78
+
79
+ > AI tự động điền dựa trên codebase analysis. Xác nhận hoặc sửa.
80
+
81
+ | # | Giả định | Nguồn | Có thể sai không? |
82
+ |---|----------|-------|-------------------|
83
+ | 1 | | Code analysis | Thấp / Trung / Cao |
84
+
85
+ ---
86
+
87
+ ## Chưa Rõ — Cần Làm Rõ Trước Khi Plan
88
+
89
+ - [ ] [Câu hỏi 1] — ảnh hưởng đến approach nếu sai
90
+ - [ ] [Câu hỏi 2]
91
+
92
+ ---
93
+
94
+ ## Ghi Chú
95
+
96
+ [Gotchas, tech debt liên quan, lịch sử thay đổi gần đây]