@damphuquy/agent-init 1.4.0 → 1.4.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.
- package/README.md +8 -2
- package/README.vi.md +8 -2
- package/dist/cli.d.ts +4 -2
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +49 -5
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +4 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +67 -1
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/scaffolder.d.ts +2 -1
- package/dist/scaffolder.d.ts.map +1 -1
- package/dist/scaffolder.js +64 -12
- package/dist/scaffolder.js.map +1 -1
- package/dist/types.d.ts +5 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/ui.d.ts +3 -1
- package/dist/ui.d.ts.map +1 -1
- package/dist/ui.js +71 -6
- package/dist/ui.js.map +1 -1
- package/package.json +2 -2
- package/templates/vi/.agents/README.md +29 -0
- package/templates/vi/.agents/behavior.md +72 -0
- package/templates/vi/.agents/conventions/naming.md +55 -0
- package/templates/vi/.agents/guardrails.md +113 -0
- package/templates/vi/AGENTS.md +133 -0
- package/templates/vi/process/.editorconfig +15 -0
- package/templates/vi/process/README.md +150 -0
- package/templates/vi/process/_seeds/_GUIDE.md +170 -0
- package/templates/vi/process/_seeds/cancellation-template.md.seed +79 -0
- package/templates/vi/process/_seeds/context-group.md.seed +154 -0
- package/templates/vi/process/_seeds/decision-template.md.seed +143 -0
- package/templates/vi/process/_seeds/handoff-template.md.seed +79 -0
- package/templates/vi/process/_seeds/plan-template.md.seed +135 -0
- package/templates/vi/process/_seeds/program-template.md.seed +56 -0
- package/templates/vi/process/_seeds/results-template.tsv.seed +5 -0
- package/templates/vi/process/_seeds/review-template.md.seed +149 -0
- package/templates/vi/process/_seeds/state-template.md.seed +149 -0
- package/templates/vi/process/_seeds/task-template.md.seed +196 -0
- package/templates/vi/process/context/all-context.md +53 -0
- package/templates/vi/process/context/planning/all-planning.md +31 -0
- package/templates/vi/process/context/tests/all-tests.md +56 -0
- package/templates/vi/process/development-protocols/all-development-protocols.md +27 -0
- package/templates/vi/process/development-protocols/implementation-standards.md +28 -0
- package/templates/vi/process/development-protocols/orchestration.md +24 -0
- package/templates/vi/process/features/active/.gitkeep +0 -0
- package/templates/vi/process/features/backlog/.gitkeep +0 -0
- package/templates/vi/process/features/completed/.gitkeep +0 -0
- package/templates/vi/process/general-plans/active/.gitkeep +0 -0
- package/templates/vi/process/general-plans/backlog/.gitkeep +0 -0
- package/templates/vi/process/general-plans/completed/.gitkeep +0 -0
- /package/templates/{.agents → en/.agents}/README.md +0 -0
- /package/templates/{.agents → en/.agents}/behavior.md +0 -0
- /package/templates/{.agents → en/.agents}/conventions/naming.md +0 -0
- /package/templates/{.agents → en/.agents}/guardrails.md +0 -0
- /package/templates/{AGENTS.md → en/AGENTS.md} +0 -0
- /package/templates/{process → en/process}/.editorconfig +0 -0
- /package/templates/{process → en/process}/README.md +0 -0
- /package/templates/{process → en/process}/_seeds/_GUIDE.md +0 -0
- /package/templates/{process → en/process}/_seeds/cancellation-template.md.seed +0 -0
- /package/templates/{process → en/process}/_seeds/context-group.md.seed +0 -0
- /package/templates/{process → en/process}/_seeds/decision-template.md.seed +0 -0
- /package/templates/{process → en/process}/_seeds/handoff-template.md.seed +0 -0
- /package/templates/{process → en/process}/_seeds/plan-template.md.seed +0 -0
- /package/templates/{process → en/process}/_seeds/program-template.md.seed +0 -0
- /package/templates/{process → en/process}/_seeds/results-template.tsv.seed +0 -0
- /package/templates/{process → en/process}/_seeds/review-template.md.seed +0 -0
- /package/templates/{process → en/process}/_seeds/state-template.md.seed +0 -0
- /package/templates/{process → en/process}/_seeds/task-template.md.seed +0 -0
- /package/templates/{process → en/process}/context/all-context.md +0 -0
- /package/templates/{process → en/process}/context/planning/all-planning.md +0 -0
- /package/templates/{process → en/process}/context/tests/all-tests.md +0 -0
- /package/templates/{process → en/process}/development-protocols/all-development-protocols.md +0 -0
- /package/templates/{process → en/process}/development-protocols/implementation-standards.md +0 -0
- /package/templates/{process → en/process}/development-protocols/orchestration.md +0 -0
- /package/templates/{process → en/process}/features/active/.gitkeep +0 -0
- /package/templates/{process → en/process}/features/backlog/.gitkeep +0 -0
- /package/templates/{process → en/process}/features/completed/.gitkeep +0 -0
- /package/templates/{process → en/process}/general-plans/active/.gitkeep +0 -0
- /package/templates/{process → en/process}/general-plans/backlog/.gitkeep +0 -0
- /package/templates/{process → en/process}/general-plans/completed/.gitkeep +0 -0
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
# Quyết Định Kỹ Thuật (Decision): [DEC-ID] [Task ID]
|
|
2
|
+
|
|
3
|
+
<technical_decision task_id="[TASK-ID]" dec_id="[DEC-ID]" version="1.0" framework="RIPER-5">
|
|
4
|
+
|
|
5
|
+
<!-- GIAI ĐOẠN CHỈ ĐỌC (READ-ONLY). Đề xuất các phương án. Không tự ý quyết định khi chưa có kỹ sư duyệt. -->
|
|
6
|
+
<decision_status>
|
|
7
|
+
<phase>INNOVATE</phase>
|
|
8
|
+
<mode>READ-ONLY</mode>
|
|
9
|
+
<decision_owner></decision_owner>
|
|
10
|
+
<last_updated></last_updated>
|
|
11
|
+
</decision_status>
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 1. Ngữ Cảnh (Context)
|
|
16
|
+
|
|
17
|
+
<context>
|
|
18
|
+
<task>[Liên kết tới task.md hoặc Task ID]</task>
|
|
19
|
+
<research_artifact>[Liên kết tới research.md]</research_artifact>
|
|
20
|
+
<constraints>
|
|
21
|
+
[Các ràng buộc chính từ khảo sát làm thu hẹp không gian giải pháp.]
|
|
22
|
+
</constraints>
|
|
23
|
+
</context>
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## 2. Vấn Đề Cần Quyết Định (Decision Required)
|
|
28
|
+
|
|
29
|
+
<decision_question>
|
|
30
|
+
[Tuyên bố chính xác điều cần quyết định. Một câu hỏi trọng tâm cho mỗi artifact quyết định.]
|
|
31
|
+
</decision_question>
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## 3. Các Phương Án Đề Xuất (Options)
|
|
36
|
+
|
|
37
|
+
<options>
|
|
38
|
+
|
|
39
|
+
<option id="A">
|
|
40
|
+
<approach>[Hướng tiếp cận triển khai tổng quan]</approach>
|
|
41
|
+
<advantages>-</advantages>
|
|
42
|
+
<disadvantages>-</disadvantages>
|
|
43
|
+
<complexity>LOW | MEDIUM | HIGH</complexity>
|
|
44
|
+
<compatibility>[Tác động tương thích ngược]</compatibility>
|
|
45
|
+
<concurrency_transaction_risk>[Race conditions, tranh chấp khóa lock, độ phức tạp rollback]</concurrency_transaction_risk>
|
|
46
|
+
<testability>[Mức độ thuận tiện khi viết test kiểm chứng phương án này]</testability>
|
|
47
|
+
<maintainability>[Gánh nặng bảo trì dài hạn]</maintainability>
|
|
48
|
+
</option>
|
|
49
|
+
|
|
50
|
+
<option id="B">
|
|
51
|
+
<approach>[Hướng tiếp cận triển khai tổng quan]</approach>
|
|
52
|
+
<advantages>-</advantages>
|
|
53
|
+
<disadvantages>-</disadvantages>
|
|
54
|
+
<complexity>LOW | MEDIUM | HIGH</complexity>
|
|
55
|
+
<compatibility>[Tác động tương thích ngược]</compatibility>
|
|
56
|
+
<concurrency_transaction_risk>[Race conditions, tranh chấp khóa lock, độ phức tạp rollback]</concurrency_transaction_risk>
|
|
57
|
+
<testability>[Mức độ thuận tiện khi viết test kiểm chứng phương án này]</testability>
|
|
58
|
+
<maintainability>[Gánh nặng bảo trì dài hạn]</maintainability>
|
|
59
|
+
</option>
|
|
60
|
+
|
|
61
|
+
<option id="C">
|
|
62
|
+
<approach>[Hướng tiếp cận triển khai tổng quan]</approach>
|
|
63
|
+
<advantages>-</advantages>
|
|
64
|
+
<disadvantages>-</disadvantages>
|
|
65
|
+
<complexity>LOW | MEDIUM | HIGH</complexity>
|
|
66
|
+
<compatibility>[Tác động tương thích ngược]</compatibility>
|
|
67
|
+
<concurrency_transaction_risk>[Race conditions, tranh chấp khóa lock, độ phức tạp rollback]</concurrency_transaction_risk>
|
|
68
|
+
<testability>[Mức độ thuận tiện khi viết test kiểm chứng phương án này]</testability>
|
|
69
|
+
<maintainability>[Gánh nặng bảo trì dài hạn]</maintainability>
|
|
70
|
+
</option>
|
|
71
|
+
|
|
72
|
+
</options>
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## 4. Ma Trận Đánh Đổi (Trade-off Matrix)
|
|
77
|
+
|
|
78
|
+
<tradeoff_matrix>
|
|
79
|
+
|
|
80
|
+
| Tiêu chí | A | B | C |
|
|
81
|
+
|---|:---:|:---:|:---:|
|
|
82
|
+
| Khả năng tương thích | | | |
|
|
83
|
+
| Độ phức tạp | | | |
|
|
84
|
+
| Mức độ rủi ro | | | |
|
|
85
|
+
| Khả năng kiểm thử | | | |
|
|
86
|
+
| Khả năng bảo trì | | | |
|
|
87
|
+
|
|
88
|
+
<!-- Thang điểm: 1 (kém) → 5 (xuất sắc) -->
|
|
89
|
+
</tradeoff_matrix>
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## 5. Đề Xuất Của Agent (Recommendation)
|
|
94
|
+
|
|
95
|
+
<recommendation>
|
|
96
|
+
[Phương án Agent đề xuất kèm lý do lập luận. Đây là đề xuất — kỹ sư con người sẽ quyết định.]
|
|
97
|
+
</recommendation>
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
## 6. Quyết Định Của Kỹ Sư (Engineer Decision)
|
|
102
|
+
|
|
103
|
+
<!-- Phần này BẮT BUỘC kỹ sư con người phải điền trước khi Gate 1 được thông qua -->
|
|
104
|
+
<engineer_decision>
|
|
105
|
+
<selected_option></selected_option>
|
|
106
|
+
<rationale></rationale>
|
|
107
|
+
<rejected_alternatives>
|
|
108
|
+
- Phương án [X]: [Lý do từ chối]
|
|
109
|
+
</rejected_alternatives>
|
|
110
|
+
</engineer_decision>
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## 7. Ràng Buộc Phái Sinh Từ Quyết Định Này (Constraints Created)
|
|
115
|
+
|
|
116
|
+
<constraints_created>
|
|
117
|
+
[Liệt kê các ràng buộc mới lên khâu triển khai sẽ chuyển tiếp vào plan.md]
|
|
118
|
+
-
|
|
119
|
+
</constraints_created>
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
## 8. Bằng Chứng Còn Cần Xác Minh (Evidence Still Required)
|
|
124
|
+
|
|
125
|
+
<evidence_required>
|
|
126
|
+
[Bất kỳ sự thật nào chưa được khẳng định cần xác minh trong giai đoạn Plan hoặc Execute]
|
|
127
|
+
-
|
|
128
|
+
</evidence_required>
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## Gate 1 — Phê Duyệt Quyết Định (Decision Approved)
|
|
133
|
+
|
|
134
|
+
<gate id="G1">
|
|
135
|
+
- [ ] Toàn bộ phương án đã được trình bày và phân tích đánh đổi.
|
|
136
|
+
- [ ] Kỹ sư đã xem xét các phương án.
|
|
137
|
+
- [ ] Phương án do kỹ sư chọn đã được ghi nhận ở trên.
|
|
138
|
+
- [ ] Không còn quyết định nghiệp vụ / schema / bảo mật nào đang bỏ ngỏ.
|
|
139
|
+
<approved_by></approved_by>
|
|
140
|
+
<approved_date></approved_date>
|
|
141
|
+
</gate>
|
|
142
|
+
|
|
143
|
+
</technical_decision>
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# Biên Bản Bàn Giao (Handoff): [TASK-ID]
|
|
2
|
+
|
|
3
|
+
<handoff task_id="[TASK-ID]" version="2.0" framework="RIPER-5">
|
|
4
|
+
|
|
5
|
+
<!-- Tóm tắt bàn giao cuối cùng. Cố tình thiết kế ngắn gọn. Không lặp lại các chi tiết dài dòng trong research/plan/review. -->
|
|
6
|
+
<!-- Trả lời 4 câu hỏi: Đã thay đổi gì? Vì sao? Bằng chứng nào chứng minh? Còn rủi ro gì? -->
|
|
7
|
+
|
|
8
|
+
<handoff_status>
|
|
9
|
+
<review_decision>PASS</review_decision> <!-- Bắt buộc phải là PASS trước khi bàn giao hợp lệ -->
|
|
10
|
+
<review_artifact>[Liên kết tới review.md]</review_artifact>
|
|
11
|
+
<completed_date></completed_date>
|
|
12
|
+
</handoff_status>
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 1. Những Gì Đã Thay Đổi (What Changed)
|
|
17
|
+
|
|
18
|
+
<what_changed>
|
|
19
|
+
[Tóm tắt súc tích về thay đổi hành vi đã hoàn thành. Tham chiếu tới mục tiêu trong task.md.]
|
|
20
|
+
</what_changed>
|
|
21
|
+
|
|
22
|
+
<main_changes>
|
|
23
|
+
- `duong/dan/toi/file` — [Bản chất thay đổi]
|
|
24
|
+
</main_changes>
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## 2. Lý Do Thay Đổi (Why)
|
|
29
|
+
|
|
30
|
+
<why>
|
|
31
|
+
[Lập luận kỹ thuật hoặc nghiệp vụ. Một đoạn văn ngắn gọn. Liên kết tới task.md để xem toàn bộ ngữ cảnh.]
|
|
32
|
+
</why>
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## 3. Bằng Chứng Xác Minh (What Proves It)
|
|
37
|
+
|
|
38
|
+
<evidence>
|
|
39
|
+
|
|
40
|
+
| AC | Công cụ kiểm chứng (Verifier) | Kết quả |
|
|
41
|
+
|---|---|---|
|
|
42
|
+
| AC-1 | `[lệnh]` | PASS |
|
|
43
|
+
| AC-2 | `[lệnh]` | PASS |
|
|
44
|
+
| AC-3 | `[lệnh]` | PASS |
|
|
45
|
+
|
|
46
|
+
<!-- Lệnh để tái lập kiểm chứng: -->
|
|
47
|
+
```bash
|
|
48
|
+
[Các lệnh kiểm chứng theo thứ tự]
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
</evidence>
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## 4. Rủi Ro Tồn Đọng (What Remains Risky)
|
|
56
|
+
|
|
57
|
+
<residual_risk>
|
|
58
|
+
[Bất kỳ rủi ro nào đã được chấp thuận tại Gate 3 mà người tiếp nhận cần lưu ý.]
|
|
59
|
+
- [Mục rủi ro — khuyến nghị giảm thiểu hoặc giám sát]
|
|
60
|
+
</residual_risk>
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## 5. Quyết Định & Giả Định (Decisions & Assumptions)
|
|
65
|
+
|
|
66
|
+
<decisions_and_assumptions>
|
|
67
|
+
<!-- Chỉ liệt kê các quyết định ảnh hưởng đến người bảo trì tương lai. Chi tiết xem tại decision.md. -->
|
|
68
|
+
- [Tóm tắt quyết định — vì sao chọn giải pháp này thay vì các lựa chọn khác]
|
|
69
|
+
</decisions_and_assumptions>
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## 6. Hành Động Tiếp Theo (Next Action)
|
|
74
|
+
|
|
75
|
+
<next_action>
|
|
76
|
+
[Những việc người hoặc giai đoạn tiếp theo nên làm, nếu có. Nếu không: NONE.]
|
|
77
|
+
</next_action>
|
|
78
|
+
|
|
79
|
+
</handoff>
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
# Kế Hoạch Lát Cắt (Plan): [PLAN-ID] [Task ID]
|
|
2
|
+
|
|
3
|
+
<execution_plan task_id="[TASK-ID]" plan_id="[PLAN-ID]" version="2.0" framework="RIPER-5">
|
|
4
|
+
|
|
5
|
+
<!-- GIAI ĐOẠN LẬP KẾ HOẠCH (PLAN). Chỉ tạo/sửa artifact kế hoạch. Không sửa mã nguồn. -->
|
|
6
|
+
<plan_status>
|
|
7
|
+
<phase>PLAN</phase>
|
|
8
|
+
<last_updated></last_updated>
|
|
9
|
+
</plan_status>
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## 1. Artifact Đầu Vào (Input Artifacts)
|
|
14
|
+
|
|
15
|
+
<input_artifacts>
|
|
16
|
+
<task_spec>[Liên kết tới task.md]</task_spec>
|
|
17
|
+
<research>[Liên kết tới research.md]</research>
|
|
18
|
+
<decision>[Liên kết tới decision.md — DEC-ID, phương án đã chọn]</decision>
|
|
19
|
+
</input_artifacts>
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## 2. Ràng Buộc Thực Thi (Execution Constraints)
|
|
24
|
+
|
|
25
|
+
<!-- Các ràng buộc này có tính pháp lý ràng buộc giai đoạn Execute. Agent không được vượt quá. -->
|
|
26
|
+
<execution_constraints>
|
|
27
|
+
<allowed_files>
|
|
28
|
+
- `src/duong/dan/...` — [Lý do cho phép]
|
|
29
|
+
- `tests/duong/dan/...` — [Lý do cho phép]
|
|
30
|
+
</allowed_files>
|
|
31
|
+
<forbidden_files>
|
|
32
|
+
- `src/public-api/...` — [Không nằm trong phạm vi]
|
|
33
|
+
- `schema/...` — [Thay đổi schema yêu cầu phê duyệt riêng]
|
|
34
|
+
</forbidden_files>
|
|
35
|
+
<allowed_commands>
|
|
36
|
+
- `[lệnh chạy test]`
|
|
37
|
+
- `[lệnh chạy lint/format]`
|
|
38
|
+
</allowed_commands>
|
|
39
|
+
<restricted_operations>
|
|
40
|
+
- Không chạy migration database khi chưa có sự phê duyệt rõ ràng từ kỹ sư.
|
|
41
|
+
- Không thêm thư viện bên thứ ba mới khi chưa có sự phê duyệt rõ ràng từ kỹ sư.
|
|
42
|
+
</restricted_operations>
|
|
43
|
+
<required_approvals>
|
|
44
|
+
- [Liệt kê các điểm cần dừng xin phép giữa chừng, ví dụ: trước khi sửa module dùng chung]
|
|
45
|
+
</required_approvals>
|
|
46
|
+
</execution_constraints>
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## 3. Bảng Tóm Tắt Lát Cắt (Slice Summary)
|
|
51
|
+
|
|
52
|
+
<slice_summary>
|
|
53
|
+
|
|
54
|
+
| ID | Hành vi | Ranh giới | Danh sách file | AC | Verifier | Rủi ro | Mode | Rollback |
|
|
55
|
+
|---|---|---|---|---|---|---|---|---|
|
|
56
|
+
| S1 | | | | | | | | |
|
|
57
|
+
| S2 | | | | | | | | |
|
|
58
|
+
|
|
59
|
+
</slice_summary>
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## 4. Chi Tiết Từng Lát Cắt (Slice Details)
|
|
64
|
+
|
|
65
|
+
<slices>
|
|
66
|
+
|
|
67
|
+
<slice id="S1">
|
|
68
|
+
<objective>[Hành vi cụ thể mà lát cắt này mang lại]</objective>
|
|
69
|
+
<change>[Những gì cụ thể sẽ được chỉnh sửa]</change>
|
|
70
|
+
<allowed_files>
|
|
71
|
+
- `src/duong/dan/file.py`
|
|
72
|
+
</allowed_files>
|
|
73
|
+
<acceptance_criteria>
|
|
74
|
+
- [ ] AC-N: [Tiêu chí mà lát cắt này thỏa mãn]
|
|
75
|
+
</acceptance_criteria>
|
|
76
|
+
<verifier>
|
|
77
|
+
```bash
|
|
78
|
+
# Lệnh kiểm chứng chứng minh lát cắt này hoạt động chính xác
|
|
79
|
+
```
|
|
80
|
+
</verifier>
|
|
81
|
+
<expected_evidence>[Đầu ra mong muốn từ lệnh verifier]</expected_evidence>
|
|
82
|
+
<rollback_point>[Cách hoàn nguyên nếu lát cắt này thất bại — git stash / revert commit / flag]</rollback_point>
|
|
83
|
+
<stop_conditions>
|
|
84
|
+
- [Điều kiện bắt buộc dừng lại và yêu cầu con người hướng dẫn]
|
|
85
|
+
</stop_conditions>
|
|
86
|
+
</slice>
|
|
87
|
+
|
|
88
|
+
<!-- Sao chép khối <slice> này cho từng lát cắt bổ sung -->
|
|
89
|
+
|
|
90
|
+
</slices>
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## 5. Hợp Đồng Phạm Vi (Scope Contract)
|
|
95
|
+
|
|
96
|
+
<scope_contract>
|
|
97
|
+
<allowed>
|
|
98
|
+
- [Những gì Agent được phép chỉnh sửa]
|
|
99
|
+
</allowed>
|
|
100
|
+
<forbidden>
|
|
101
|
+
- [Những gì Agent tuyệt đối không bao giờ được chạm vào trong kế hoạch này]
|
|
102
|
+
</forbidden>
|
|
103
|
+
</scope_contract>
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## 6. Ma Trận Kiểm Chứng (Verification Matrix)
|
|
108
|
+
|
|
109
|
+
<!-- Được điền trong và sau giai đoạn Thực thi (Execute) -->
|
|
110
|
+
<verification_matrix>
|
|
111
|
+
|
|
112
|
+
| AC / Rủi ro | Bài test / Lệnh | Bằng chứng kỳ vọng | Kết quả thực tế |
|
|
113
|
+
|---|---|---|---|
|
|
114
|
+
| AC-1 | | | |
|
|
115
|
+
| AC-2 | | | |
|
|
116
|
+
| AC-3 | | | |
|
|
117
|
+
|
|
118
|
+
</verification_matrix>
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## Gate 2 — Phê Duyệt Kế Hoạch (Plan Approved)
|
|
123
|
+
|
|
124
|
+
<gate id="G2">
|
|
125
|
+
- [ ] Mọi lát cắt đều có verifier xác định.
|
|
126
|
+
- [ ] Hợp đồng phạm vi (cho phép / cấm) đã được phê duyệt.
|
|
127
|
+
- [ ] Điều kiện dừng đã được định nghĩa cho từng slice.
|
|
128
|
+
- [ ] Điểm hoàn nguyên (rollback point) đã được định nghĩa cho từng slice.
|
|
129
|
+
- [ ] Danh sách lệnh được phép đã được liệt kê.
|
|
130
|
+
- [ ] Kỹ sư đã ký duyệt.
|
|
131
|
+
<approved_by></approved_by>
|
|
132
|
+
<approved_date></approved_date>
|
|
133
|
+
</gate>
|
|
134
|
+
|
|
135
|
+
</execution_plan>
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Chương Trình Nhiều Giai Đoạn (Program): [PROG-ID] [Tên Chương Trình]
|
|
2
|
+
|
|
3
|
+
<program_umbrella_plan version="2.0" framework="RIPER-5">
|
|
4
|
+
|
|
5
|
+
<metadata>
|
|
6
|
+
<program_id>[PROG-ID]</program_id>
|
|
7
|
+
<lead>@engineering_lead</lead>
|
|
8
|
+
<target_timeline>[ví dụ: Sprint 1-3]</target_timeline>
|
|
9
|
+
</metadata>
|
|
10
|
+
|
|
11
|
+
## 1. Chiến Lược & Kết Quả Kỳ Vọng (Executive Strategy & Outcome)
|
|
12
|
+
<strategy>
|
|
13
|
+
<target_outcome>
|
|
14
|
+
[Mục tiêu kiến trúc hoặc nghiệp vụ đo lường được ở cấp độ cao.]
|
|
15
|
+
</target_outcome>
|
|
16
|
+
|
|
17
|
+
<system_impact>
|
|
18
|
+
[Các subsystem bị ảnh hưởng, downstream services, hoặc chỉ tiêu hiệu năng.]
|
|
19
|
+
</system_impact>
|
|
20
|
+
</strategy>
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## 2. Phân Rã Giai Đoạn & Bán Kính Ảnh Hưởng (Phase Breakdown & Blast Radius)
|
|
25
|
+
<phase_breakdown>
|
|
26
|
+
<phase number="1" id="phase-01">
|
|
27
|
+
<title>[Domain Models & Port Interfaces]</title>
|
|
28
|
+
<scope>`src/domain/`, `src/application/port_*`</scope>
|
|
29
|
+
<blast_radius level="LOW">Không ảnh hưởng dependency bên ngoài</blast_radius>
|
|
30
|
+
<status>NOT_STARTED</status>
|
|
31
|
+
</phase>
|
|
32
|
+
|
|
33
|
+
<phase number="2" id="phase-02">
|
|
34
|
+
<title>[Infrastructure Adapters & Persistence]</title>
|
|
35
|
+
<scope>`src/infrastructure/`</scope>
|
|
36
|
+
<blast_radius level="MEDIUM">Phụ thuộc vào hợp đồng domain của Phase 01</blast_radius>
|
|
37
|
+
<status>NOT_STARTED</status>
|
|
38
|
+
</phase>
|
|
39
|
+
|
|
40
|
+
<phase number="3" id="phase-03">
|
|
41
|
+
<title>[API Exposure & End-to-End Integration]</title>
|
|
42
|
+
<scope>`src/api/`</scope>
|
|
43
|
+
<blast_radius level="HIGH">Mở public HTTP endpoints và DTO contracts</blast_radius>
|
|
44
|
+
<status>NOT_STARTED</status>
|
|
45
|
+
</phase>
|
|
46
|
+
</phase_breakdown>
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## 3. Bất Biến Toàn Cục & Quy Tắc Cổng Phase (Global Invariants & Phase Gate Rules)
|
|
51
|
+
<phase_gates>
|
|
52
|
+
<rule>Mỗi phase bắt buộc phải pass 100% các lệnh kiểm thử xác minh trước khi phase tiếp theo bắt đầu.</rule>
|
|
53
|
+
<rule>Không phase nào được đưa ra breaking change lên các public API hiện có khi chưa có sự chấp thuận trước.</rule>
|
|
54
|
+
</phase_gates>
|
|
55
|
+
|
|
56
|
+
</program_umbrella_plan>
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Bảng Đăng Ký Đánh Giá Benchmark & Số Liệu Định Lượng (RIPER-5 Framework)
|
|
2
|
+
# Khởi tạo dưới tên results.tsv trong thư mục task khi cần theo dõi hiệu năng, độ trễ latency, bộ nhớ hoặc điểm eval.
|
|
3
|
+
iteration timestamp slice_id metric_name baseline observed unit diff_pct status notes
|
|
4
|
+
0 2026-01-01T00:00:00Z baseline p99_latency_ms 100.0 100.0 ms 0.0% BASELINE Đo lường baseline ban đầu
|
|
5
|
+
1 2026-01-01T01:00:00Z slice-01 p99_latency_ms 100.0 75.0 ms -25.0% PASS Áp dụng tối ưu hóa slice 1
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
# Biên Bản Nghiệm Thu (Review): [REVIEW-ID] [Task ID]
|
|
2
|
+
|
|
3
|
+
<review_artifact task_id="[TASK-ID]" review_id="[REVIEW-ID]" version="1.0" framework="RIPER-5">
|
|
4
|
+
|
|
5
|
+
<!-- GIAI ĐOẠN CHỈ ĐỌC (READ-ONLY). Có thể chạy lệnh kiểm thử. Không sửa mã nguồn trong lúc review. -->
|
|
6
|
+
<review_status>
|
|
7
|
+
<phase>REVIEW</phase>
|
|
8
|
+
<mode>READ-ONLY</mode>
|
|
9
|
+
<reviewer></reviewer>
|
|
10
|
+
<last_updated></last_updated>
|
|
11
|
+
</review_status>
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 1. Phạm Vi Nghiệm Thu (Review Scope)
|
|
16
|
+
|
|
17
|
+
<review_scope>
|
|
18
|
+
<task_spec>[Liên kết tới task.md]</task_spec>
|
|
19
|
+
<plan>[Liên kết tới plan.md]</plan>
|
|
20
|
+
<diff>[Khoảng git diff hoặc liên kết PR]</diff>
|
|
21
|
+
<tests>[Đường dẫn các bộ test suite đã chạy]</tests>
|
|
22
|
+
</review_scope>
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## 2. Nghiệm Thu Hành Vi (Behavior Review)
|
|
27
|
+
|
|
28
|
+
<behavior_review>
|
|
29
|
+
|
|
30
|
+
| AC | Hành vi kỳ vọng | Hành vi thực tế | Bằng chứng | Kết quả |
|
|
31
|
+
|---|---|---|---|---|
|
|
32
|
+
| AC-1 | | | | PASS / FAIL |
|
|
33
|
+
| AC-2 | | | | PASS / FAIL |
|
|
34
|
+
| AC-3 | | | | PASS / FAIL |
|
|
35
|
+
|
|
36
|
+
</behavior_review>
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## 3. Nghiệm Thu Kiến Trúc (Architecture Review)
|
|
41
|
+
|
|
42
|
+
<architecture_review>
|
|
43
|
+
<dependency_direction>[Chiều import/dependency có tuân thủ đúng quy tắc kiến trúc không?]</dependency_direction>
|
|
44
|
+
<boundary_violations>[Có lời gọi vượt ranh giới vi phạm phạm vi đã khai báo không?]</boundary_violations>
|
|
45
|
+
<unnecessary_abstraction>[Có lớp trừu tượng hay cấu trúc bắc cầu nào được thêm vào mà không có lý do không?]</unnecessary_abstraction>
|
|
46
|
+
<unrelated_refactor>[Có thay đổi refactor nào không bắt nguồn từ đặc tả task không?]</unrelated_refactor>
|
|
47
|
+
</architecture_review>
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 4. Nghiệm Thu Dữ Liệu (Data Review)
|
|
52
|
+
|
|
53
|
+
<data_review>
|
|
54
|
+
<transaction>[Ranh giới transaction đã đúng chưa? Có nguy cơ partial commit không?]</transaction>
|
|
55
|
+
<consistency>[Tính nhất quán dữ liệu có được đảm bảo khi có ghi đồng thời?]</consistency>
|
|
56
|
+
<concurrency>[Xung đột race condition, tranh chấp khóa, kiểm soát optimistic locking?]</concurrency>
|
|
57
|
+
<migration>[Các thay đổi schema cơ sở dữ liệu có tương thích ngược không?]</migration>
|
|
58
|
+
<constraints>[Các ràng buộc database constraints có được tôn trọng không?]</constraints>
|
|
59
|
+
</data_review>
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## 5. Nghiệm Thu Bảo Mật (Security Review)
|
|
64
|
+
|
|
65
|
+
<security_review>
|
|
66
|
+
<authentication>[Ngữ cảnh xác thực có được kiểm tra tại các điểm bắt buộc không?]</authentication>
|
|
67
|
+
<authorization>[Kiểm tra phân quyền đã được đặt đúng chỗ chưa?]</authorization>
|
|
68
|
+
<validation>[Validation và chuẩn hóa dữ liệu đầu vào đã đầy đủ chưa?]</validation>
|
|
69
|
+
<secrets>[Không có token, secret hoặc credential nào bị lộ trong code hay log?]</secrets>
|
|
70
|
+
<injection>[Các nguy cơ SQL/command injection đã được phòng chống triệt để chưa?]</injection>
|
|
71
|
+
<sensitive_logging>[Không có dữ liệu nhạy cảm PII bị ghi vào log hệ thống?]</sensitive_logging>
|
|
72
|
+
</security_review>
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## 6. Nghiệm Thu Hồi Quy (Regression Review)
|
|
77
|
+
|
|
78
|
+
<regression_review>
|
|
79
|
+
<existing_behavior>[Các bài test cũ còn chạy pass không? Có bài test nào trước đây pass nay bị fail?]</existing_behavior>
|
|
80
|
+
<backward_compatibility>[Public API / schema có duy trì tương thích ngược không?]</backward_compatibility>
|
|
81
|
+
<existing_tests>[Có bài test có sẵn nào bị chỉnh sửa mà thiếu lý do chính đáng không?]</existing_tests>
|
|
82
|
+
</regression_review>
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## 7. Bảng Phát Hiện (Findings)
|
|
87
|
+
|
|
88
|
+
<findings>
|
|
89
|
+
|
|
90
|
+
| ID | Danh mục | Mức độ | Loại | Bằng chứng | File/Ký hiệu | Hành động yêu cầu |
|
|
91
|
+
|---|---|---|---|---|---|---|
|
|
92
|
+
| F-1 | Behavior | HIGH | Confirmed Defect | | | |
|
|
93
|
+
|
|
94
|
+
<!-- Danh mục (Category): Behavior | Architecture | Data | Security | Regression | Scope -->
|
|
95
|
+
<!-- Mức độ (Severity): CRITICAL | HIGH | MEDIUM | LOW | INFO -->
|
|
96
|
+
<!-- Loại (Type): Confirmed Defect (Lỗi xác nhận) | Risk requiring validation (Rủi ro cần kiểm chứng) | Optional Improvement (Cải tiến tùy chọn) -->
|
|
97
|
+
|
|
98
|
+
</findings>
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## 8. Ma Trận Kiểm Chứng (Verification Matrix)
|
|
103
|
+
|
|
104
|
+
<verification_matrix>
|
|
105
|
+
|
|
106
|
+
| AC / Rủi ro | Công cụ kiểm chứng | Kết quả | Bằng chứng | Điểm chưa kiểm chứng |
|
|
107
|
+
|---|---|---|---|---|
|
|
108
|
+
| AC-1 | | PASS / FAIL | | |
|
|
109
|
+
| AC-2 | | PASS / FAIL | | |
|
|
110
|
+
| AC-3 | | PASS / FAIL | | |
|
|
111
|
+
|
|
112
|
+
</verification_matrix>
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## 9. Rủi Ro Tồn Đọng (Residual Risk)
|
|
117
|
+
|
|
118
|
+
<residual_risk>
|
|
119
|
+
[Các rủi ro vẫn còn lại sau review. Bắt buộc phải được chấp nhận rõ ràng trước khi Gate 3 thông qua.]
|
|
120
|
+
-
|
|
121
|
+
</residual_risk>
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## 10. Quyết Định Nghiệm Thu (Review Decision)
|
|
126
|
+
|
|
127
|
+
<review_decision>
|
|
128
|
+
<!-- Chọn một trong ba: PASS | CHANGES_REQUIRED | BLOCKED -->
|
|
129
|
+
<decision></decision>
|
|
130
|
+
<rationale></rationale>
|
|
131
|
+
</review_decision>
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
## Gate 3 — Nghiệm Thu Đạt (Review Passed)
|
|
136
|
+
|
|
137
|
+
<gate id="G3">
|
|
138
|
+
- [ ] Toàn bộ git diff đã được kiểm toán (không có thay đổi ngoài luồng).
|
|
139
|
+
- [ ] Hoàn tất dọn dẹp vệ sinh: toàn bộ debug log, lệnh print tạm và file nháp scratch đã bị xóa.
|
|
140
|
+
- [ ] Mọi bằng chứng yêu cầu đều tồn tại và được đính kèm.
|
|
141
|
+
- [ ] Toàn bộ phát hiện đã được phân loại xử lý (Lỗi xác nhận đã sửa hoặc được chấp nhận rủi ro).
|
|
142
|
+
- [ ] Rủi ro tồn đọng đã được chấp nhận rõ ràng.
|
|
143
|
+
- [ ] Quyết định review: PASS.
|
|
144
|
+
- [ ] Sẵn sàng bàn giao (handoff).
|
|
145
|
+
<approved_by></approved_by>
|
|
146
|
+
<approved_date></approved_date>
|
|
147
|
+
</gate>
|
|
148
|
+
|
|
149
|
+
</review_artifact>
|