@warnyin/agents 0.9.1 → 0.10.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.
Files changed (78) hide show
  1. package/CHANGELOG.md +110 -105
  2. package/README.md +148 -148
  3. package/package.json +38 -38
  4. package/src/.claude/agents/warnyin-infra.md +13 -13
  5. package/src/.claude/agents/warnyin-qa.md +13 -13
  6. package/src/.claude/agents/warnyin-sa.md +13 -13
  7. package/src/.claude/agents/warnyin-security.md +13 -13
  8. package/src/.claude/agents/warnyin-tech-lead.md +13 -13
  9. package/src/.claude/commands/warnyin/build.md +30 -30
  10. package/src/.claude/commands/warnyin/design.md +26 -26
  11. package/src/.claude/commands/warnyin/discovery.md +17 -17
  12. package/src/.claude/commands/warnyin/explore.md +14 -14
  13. package/src/.claude/commands/warnyin/init.md +12 -12
  14. package/src/.claude/commands/warnyin/install-skill.md +14 -14
  15. package/src/.claude/commands/warnyin/next.md +17 -17
  16. package/src/.claude/commands/warnyin/ship.md +28 -28
  17. package/src/.claude/commands/warnyin/update-codemaps.md +12 -12
  18. package/src/.claude/commands/warnyin/verify.md +20 -20
  19. package/src/.claude/skills/explore/SKILL.md +8 -8
  20. package/src/.claude/skills/next/SKILL.md +8 -8
  21. package/src/.claude/skills/update-codemaps/SKILL.md +8 -8
  22. package/src/.warnyin/installer/templates/CLAUDE.md +29 -29
  23. package/src/.warnyin/template/docs/codemap/index.md +18 -18
  24. package/src/.warnyin/template/docs/features/[feature-name]/business.md +5 -5
  25. package/src/.warnyin/template/docs/features/[feature-name]/feature.md +5 -5
  26. package/src/.warnyin/template/docs/features/[feature-name]/spec.md +16 -16
  27. package/src/.warnyin/template/docs/infra.md +16 -16
  28. package/src/.warnyin/template/docs/project.md +18 -18
  29. package/src/.warnyin/template/docs/rule.md +7 -7
  30. package/src/.warnyin/template/docs/techstack/[component]/about.md +6 -6
  31. package/src/.warnyin/template/docs/techstack/[component]/rule.md +6 -6
  32. package/src/.warnyin/template/docs/techstack/[component]/standard.md +6 -6
  33. package/src/.warnyin/template/docs/techstack/[component]/structure.md +7 -7
  34. package/src/.warnyin/template/docs/techstack/[component]/test.md +7 -7
  35. package/src/.warnyin/template/docs/troubleshooting.md +32 -32
  36. package/src/.warnyin/template/stages/[topic]/build.md +58 -58
  37. package/src/.warnyin/template/stages/[topic]/business.md +21 -21
  38. package/src/.warnyin/template/stages/[topic]/design.md +57 -57
  39. package/src/.warnyin/template/stages/[topic]/discovery.md +69 -69
  40. package/src/.warnyin/template/stages/[topic]/proposal.md +43 -43
  41. package/src/.warnyin/template/stages/[topic]/research.md +49 -49
  42. package/src/.warnyin/template/stages/[topic]/ship.md +32 -32
  43. package/src/.warnyin/template/stages/[topic]/tasks/[task-name]/issue.md +19 -19
  44. package/src/.warnyin/template/stages/[topic]/tasks/[task-name]/rule.md +13 -13
  45. package/src/.warnyin/template/stages/[topic]/tasks/[task-name]/spec.md +36 -36
  46. package/src/.warnyin/template/stages/[topic]/tasks/[task-name]/standard.md +21 -21
  47. package/src/.warnyin/template/stages/[topic]/tasks/[task-name]/task.md +39 -39
  48. package/src/.warnyin/template/stages/[topic]/test.md +46 -46
  49. package/src/.warnyin/template/stages/[topic]/troubleshooting.md +34 -34
  50. package/src/.warnyin/template/stages/[topic]/verify.md +44 -44
  51. package/src/.warnyin/workflow/README.md +101 -100
  52. package/src/.warnyin/workflow/api-doc.md +93 -0
  53. package/src/.warnyin/workflow/codemap.md +91 -91
  54. package/src/.warnyin/workflow/contexts/README.md +49 -49
  55. package/src/.warnyin/workflow/contexts/build.md +25 -25
  56. package/src/.warnyin/workflow/contexts/research.md +25 -25
  57. package/src/.warnyin/workflow/contexts/review.md +25 -25
  58. package/src/.warnyin/workflow/explore.md +32 -32
  59. package/src/.warnyin/workflow/init.md +125 -125
  60. package/src/.warnyin/workflow/next.md +48 -48
  61. package/src/.warnyin/workflow/roles/README.md +47 -46
  62. package/src/.warnyin/workflow/roles/ba.md +25 -25
  63. package/src/.warnyin/workflow/roles/developer.md +30 -30
  64. package/src/.warnyin/workflow/roles/infra.md +24 -24
  65. package/src/.warnyin/workflow/roles/po.md +28 -28
  66. package/src/.warnyin/workflow/roles/qa.md +35 -35
  67. package/src/.warnyin/workflow/roles/sa.md +28 -28
  68. package/src/.warnyin/workflow/roles/security.md +39 -39
  69. package/src/.warnyin/workflow/roles/tech-lead.md +28 -28
  70. package/src/.warnyin/workflow/scripts/build-wave.mjs +125 -125
  71. package/src/.warnyin/workflow/scripts/validate-topic.mjs +378 -378
  72. package/src/.warnyin/workflow/stages/build.md +98 -98
  73. package/src/.warnyin/workflow/stages/design.md +122 -119
  74. package/src/.warnyin/workflow/stages/discovery.md +78 -78
  75. package/src/.warnyin/workflow/stages/ship.md +92 -90
  76. package/src/.warnyin/workflow/stages/verify.md +80 -77
  77. package/src/AGENTS.md +48 -48
  78. package/src/bin/cli.mjs +193 -193
@@ -1,32 +1,32 @@
1
- # Troubleshooting KB (กลาง)
2
-
3
- > คลังความรู้ปัญหา-วิธีแก้ของทั้งโปรเจกต์ — สะสมจากทุก topic
4
- > **อ่านไฟล์นี้ก่อนเสมอเมื่อเจอ build error / ปัญหาระหว่างทำงาน** เผื่อเคยแก้แล้ว
5
- > ป้อนเข้ามาตอน **SHIP**: ยก entry ที่มีค่าจาก `docs/stages/<topic>/troubleshooting.md` มารวมที่นี่ (ลบของซ้ำ/รวมที่คล้ายกัน)
6
-
7
- ---
8
-
9
- ## วิธีค้น
10
- ค้นด้วย error message, component, หรือ keyword อาการ — entry เรียงตาม component แล้วตามความถี่
11
-
12
- ## สารบัญตาม component
13
- <!-- เพิ่ม section ต่อ component เมื่อมี entry แรก เช่น - [api-service](#api-service) -->
14
- - [ทั่วไป / cross-cutting](#ทั่วไป--cross-cutting)
15
-
16
- ---
17
-
18
- ## ทั่วไป / cross-cutting
19
- <!-- ยังไม่มี entry — เพิ่มตอน SHIP จาก topic troubleshooting.md -->
20
-
21
- ---
22
-
23
- ## รูปแบบ entry (ใช้ตอนเพิ่มจาก SHIP)
24
- ```markdown
25
- ### <ชื่อปัญหา> · เจอ N ครั้ง · อัปเดต YYYY-MM-DD
26
- - **อาการ/error:** ...
27
- - **trigger:** ...
28
- - **root cause:** ...
29
- - **วิธีแก้:** ...
30
- - **ป้องกันซ้ำ:** ...
31
- - **มาจาก topic:** <slug>
32
- ```
1
+ # Troubleshooting KB (กลาง)
2
+
3
+ > คลังความรู้ปัญหา-วิธีแก้ของทั้งโปรเจกต์ — สะสมจากทุก topic
4
+ > **อ่านไฟล์นี้ก่อนเสมอเมื่อเจอ build error / ปัญหาระหว่างทำงาน** เผื่อเคยแก้แล้ว
5
+ > ป้อนเข้ามาตอน **SHIP**: ยก entry ที่มีค่าจาก `docs/stages/<topic>/troubleshooting.md` มารวมที่นี่ (ลบของซ้ำ/รวมที่คล้ายกัน)
6
+
7
+ ---
8
+
9
+ ## วิธีค้น
10
+ ค้นด้วย error message, component, หรือ keyword อาการ — entry เรียงตาม component แล้วตามความถี่
11
+
12
+ ## สารบัญตาม component
13
+ <!-- เพิ่ม section ต่อ component เมื่อมี entry แรก เช่น - [api-service](#api-service) -->
14
+ - [ทั่วไป / cross-cutting](#ทั่วไป--cross-cutting)
15
+
16
+ ---
17
+
18
+ ## ทั่วไป / cross-cutting
19
+ <!-- ยังไม่มี entry — เพิ่มตอน SHIP จาก topic troubleshooting.md -->
20
+
21
+ ---
22
+
23
+ ## รูปแบบ entry (ใช้ตอนเพิ่มจาก SHIP)
24
+ ```markdown
25
+ ### <ชื่อปัญหา> · เจอ N ครั้ง · อัปเดต YYYY-MM-DD
26
+ - **อาการ/error:** ...
27
+ - **trigger:** ...
28
+ - **root cause:** ...
29
+ - **วิธีแก้:** ...
30
+ - **ป้องกันซ้ำ:** ...
31
+ - **มาจาก topic:** <slug>
32
+ ```
@@ -1,58 +1,58 @@
1
- # Build Report — <ชื่อ change>
2
-
3
- > Output ของ BUILD stage · playbook: `.warnyin/workflow/stages/build.md`
4
- > รายงานผลการ implement ต่อ task + การ integrate
5
-
6
- | | |
7
- |---|---|
8
- | **Slug** | `<kebab-case>` |
9
- | **Build branch** | `<branch>` |
10
- | **Isolation** | `worktree` / `shared-tree` |
11
- | **วันที่** | `YYYY-MM-DD` |
12
- | **ผลรวม** | ผ่าน __ / ล้ม __ / ทั้งหมด __ task |
13
-
14
- ## 1. Execution plan (waves ตาม dependency)
15
- ```
16
- wave 1 (parallel): task-a, task-b
17
- wave 2: task-c (ขึ้นกับ task-a)
18
- wave 3: task-d (ขึ้นกับ task-b, task-c)
19
- ```
20
-
21
- ## 2. ผลต่อ task
22
- | Wave | Task | สถานะ | Test/Lint | ไฟล์ที่แก้ | Branch | หมายเหตุ |
23
- |---|---|---|---|---|---|---|
24
- | 1 | task-a | ✅ passed | | | | |
25
- | 1 | task-b | ❌ failed | | | | เหตุผล... |
26
-
27
- ## 3. Integration notes
28
- - การ merge แต่ละ wave / conflict ที่เจอและวิธีแก้:
29
-
30
- ## 3.5 Full build & test gate (หลัง integrate ทุก wave)
31
- > รัน build ทั้งหมด + test suite ทั้งหมด (รวม unit test) บน build branch — ต้องเขียวหมดก่อนปิด BUILD
32
-
33
- | Component | Build | Unit test | Test อื่น | รอบที่แก้ |
34
- |---|---|---|---|---|
35
- | api-service | ✅ / ❌ | ผ่าน __/__ | | |
36
- | admin-console | | | | |
37
-
38
- - error ที่เจอตอนรวม + วิธีแก้:
39
-
40
- ## 4. ปัญหา/ค้าง (ถ้ามี)
41
- - task ที่ล้ม + สาเหตุ + แผนแก้:
42
-
43
- ## 5. Rule/standard ใหม่ที่ note ไว้ (รอ SHIP)
44
- > รวบรวมจาก `tasks/<task>/rule.md` และ `standard.md` — รอ SHIP อัปเดตไฟล์กลางใน `docs/`
45
- -
46
-
47
- ## 6. ปัญหายาก/ซ้ำที่เจอ
48
- > บันทึกละเอียดที่ `./troubleshooting.md` (SHIP ยกขึ้น `docs/troubleshooting.md`)
49
- - ดู `./troubleshooting.md`
50
-
51
- ## ✅ Gate → VERIFY (ดู `.warnyin/workflow/stages/build.md` ข้อ 7)
52
- - [ ] ทุก task implement + merge เข้า build branch แล้ว
53
- - [ ] ทุก task `passed` (test/build เขียว) ไม่มี `failed` ค้าง
54
- - [ ] ไม่มี merge conflict ค้าง
55
- - [ ] Full build ของทุก component ผ่าน (ไม่มี build error)
56
- - [ ] test suite ทั้งหมด (รวม unit test) เขียวหมดบน build branch
57
- - [ ] build.md สรุปครบทุก task + ผล full build/test
58
- - [ ] ไม่แตะ rule/standard กลางใน docs/
1
+ # Build Report — <ชื่อ change>
2
+
3
+ > Output ของ BUILD stage · playbook: `.warnyin/workflow/stages/build.md`
4
+ > รายงานผลการ implement ต่อ task + การ integrate
5
+
6
+ | | |
7
+ |---|---|
8
+ | **Slug** | `<kebab-case>` |
9
+ | **Build branch** | `<branch>` |
10
+ | **Isolation** | `worktree` / `shared-tree` |
11
+ | **วันที่** | `YYYY-MM-DD` |
12
+ | **ผลรวม** | ผ่าน __ / ล้ม __ / ทั้งหมด __ task |
13
+
14
+ ## 1. Execution plan (waves ตาม dependency)
15
+ ```
16
+ wave 1 (parallel): task-a, task-b
17
+ wave 2: task-c (ขึ้นกับ task-a)
18
+ wave 3: task-d (ขึ้นกับ task-b, task-c)
19
+ ```
20
+
21
+ ## 2. ผลต่อ task
22
+ | Wave | Task | สถานะ | Test/Lint | ไฟล์ที่แก้ | Branch | หมายเหตุ |
23
+ |---|---|---|---|---|---|---|
24
+ | 1 | task-a | ✅ passed | | | | |
25
+ | 1 | task-b | ❌ failed | | | | เหตุผล... |
26
+
27
+ ## 3. Integration notes
28
+ - การ merge แต่ละ wave / conflict ที่เจอและวิธีแก้:
29
+
30
+ ## 3.5 Full build & test gate (หลัง integrate ทุก wave)
31
+ > รัน build ทั้งหมด + test suite ทั้งหมด (รวม unit test) บน build branch — ต้องเขียวหมดก่อนปิด BUILD
32
+
33
+ | Component | Build | Unit test | Test อื่น | รอบที่แก้ |
34
+ |---|---|---|---|---|
35
+ | api-service | ✅ / ❌ | ผ่าน __/__ | | |
36
+ | admin-console | | | | |
37
+
38
+ - error ที่เจอตอนรวม + วิธีแก้:
39
+
40
+ ## 4. ปัญหา/ค้าง (ถ้ามี)
41
+ - task ที่ล้ม + สาเหตุ + แผนแก้:
42
+
43
+ ## 5. Rule/standard ใหม่ที่ note ไว้ (รอ SHIP)
44
+ > รวบรวมจาก `tasks/<task>/rule.md` และ `standard.md` — รอ SHIP อัปเดตไฟล์กลางใน `docs/`
45
+ -
46
+
47
+ ## 6. ปัญหายาก/ซ้ำที่เจอ
48
+ > บันทึกละเอียดที่ `./troubleshooting.md` (SHIP ยกขึ้น `docs/troubleshooting.md`)
49
+ - ดู `./troubleshooting.md`
50
+
51
+ ## ✅ Gate → VERIFY (ดู `.warnyin/workflow/stages/build.md` ข้อ 7)
52
+ - [ ] ทุก task implement + merge เข้า build branch แล้ว
53
+ - [ ] ทุก task `passed` (test/build เขียว) ไม่มี `failed` ค้าง
54
+ - [ ] ไม่มี merge conflict ค้าง
55
+ - [ ] Full build ของทุก component ผ่าน (ไม่มี build error)
56
+ - [ ] test suite ทั้งหมด (รวม unit test) เขียวหมดบน build branch
57
+ - [ ] build.md สรุปครบทุก task + ผล full build/test
58
+ - [ ] ไม่แตะ rule/standard กลางใน docs/
@@ -1,21 +1,21 @@
1
- # Business — <ชื่อ change>
2
-
3
- > Output ของ DESIGN stage · playbook: `.warnyin/workflow/stages/design.md`
4
- > **optional** — ข้ามได้ถ้า change เล็ก (เช่น fix bug นิดหน่อย)
5
-
6
- ## 1. เป้าหมายเชิงธุรกิจ (what & why)
7
- - ทำ change นี้เพื่ออะไร / แก้ปัญหาธุรกิจอะไร:
8
- - ผูกกับเป้าหมายโปรเจกต์ (`docs/project.md`) อย่างไร:
9
-
10
- ## 2. Persona / ใครได้ประโยชน์
11
- - ผู้ใช้/ผู้มีส่วนได้ส่วนเสีย:
12
- - คุณค่าที่เขาได้รับ:
13
-
14
- ## 3. Success metric (วัดผลได้)
15
- - ตัวชี้วัดความสำเร็จ:
16
- - เป้าหมายตัวเลข (ถ้ามี):
17
-
18
- ## 4. ขอบเขตเชิงธุรกิจ / ข้อจำกัด
19
- - in scope:
20
- - out of scope:
21
- - ข้อจำกัด (compliance, เวลา, งบ ฯลฯ):
1
+ # Business — <ชื่อ change>
2
+
3
+ > Output ของ DESIGN stage · playbook: `.warnyin/workflow/stages/design.md`
4
+ > **optional** — ข้ามได้ถ้า change เล็ก (เช่น fix bug นิดหน่อย)
5
+
6
+ ## 1. เป้าหมายเชิงธุรกิจ (what & why)
7
+ - ทำ change นี้เพื่ออะไร / แก้ปัญหาธุรกิจอะไร:
8
+ - ผูกกับเป้าหมายโปรเจกต์ (`docs/project.md`) อย่างไร:
9
+
10
+ ## 2. Persona / ใครได้ประโยชน์
11
+ - ผู้ใช้/ผู้มีส่วนได้ส่วนเสีย:
12
+ - คุณค่าที่เขาได้รับ:
13
+
14
+ ## 3. Success metric (วัดผลได้)
15
+ - ตัวชี้วัดความสำเร็จ:
16
+ - เป้าหมายตัวเลข (ถ้ามี):
17
+
18
+ ## 4. ขอบเขตเชิงธุรกิจ / ข้อจำกัด
19
+ - in scope:
20
+ - out of scope:
21
+ - ข้อจำกัด (compliance, เวลา, งบ ฯลฯ):
@@ -1,57 +1,57 @@
1
- # Design (How) — <ชื่อ change>
2
-
3
- > Output ของ DESIGN stage · playbook: `.warnyin/workflow/stages/design.md`
4
- > ออกแบบเชิงเทคนิคแบบ **vertical slice architecture** — แต่ละ slice ตัดผ่านทุก layer ทำงาน end-to-end
5
-
6
- ## 1. ภาพรวมสถาปัตยกรรม
7
- - component/service ที่เกี่ยวข้อง (อิง `docs/techstack/*`):
8
- - แนวทางหลัก:
9
-
10
- ## 2. Vertical slices
11
- > หนึ่ง slice = หนึ่งหน่วยคุณค่า end-to-end (UI → API → domain → data → test) → จะกลายเป็น 1 task
12
- > **ไม่แบ่งตาม layer แนวนอน**
13
-
14
- | # | Slice (ส่งมอบคุณค่าอะไร) | ตัดผ่าน layer ไหน | → task |
15
- |---|---|---|---|
16
- | 1 | | UI · API · domain · data · test | `tasks/<task-1>/` |
17
- | 2 | | | `tasks/<task-2>/` |
18
-
19
- ## 3. Data model / schema
20
- - entity / ตาราง / field ที่เพิ่มหรือแก้:
21
- - migration (ถ้ามี):
22
-
23
- ## 4. Interface / contract
24
- - API contract / event / interface ระหว่าง component:
25
-
26
- ## 5. Flow
27
- - data-flow:
28
- - user-flow:
29
-
30
- ## 6. ผลกระทบต่อระบบเดิม
31
- - จุดที่ต้องระวัง / backward compatibility:
32
-
33
- ## 7. Dependency ระหว่าง slice/task
34
- > slice/task เชื่อมกันยังไง ลำดับการทำ
35
-
36
- ```
37
- task-1 ──▶ task-2 ──▶ task-3
38
- └──▶ task-4
39
- ```
40
-
41
- ## 8. Test strategy ระดับ design
42
- - จะยืนยันว่า design ทำงานถูกอย่างไร (ภาพรวม — รายละเอียดอยู่ใน task spec):
43
-
44
- ## 9. Spec delta (เทียบ docs/features/<name>/spec.md ปัจจุบัน)
45
- > พฤติกรรมที่ change นี้ เพิ่ม/แก้/ลบ — SHIP จะ merge ตามนี้แบบกึ่ง mechanical
46
- > change ไม่แตะพฤติกรรม feature (refactor/docs/tooling) → เขียน "ไม่มี delta" บรรทัดเดียวพอ
47
-
48
- ### ADDED
49
- #### Requirement: <ชื่อ> (→ feature: <feature-name>)
50
- <พฤติกรรม + scenario ตาม format ของ spec.md>
51
-
52
- ### MODIFIED
53
- #### Requirement: <ชื่อใหม่> (→ feature: <feature-name>) [เดิมชื่อ: <ชื่อเก่า> — ใส่เฉพาะกรณี rename]
54
- <เวอร์ชันใหม่เต็ม> _(เดิม: <สรุปสั้น>)_
55
-
56
- ### REMOVED
57
- #### Requirement: <ชื่อเดิมใน spec> (→ feature: <feature-name>) — เหตุผลที่เลิก
1
+ # Design (How) — <ชื่อ change>
2
+
3
+ > Output ของ DESIGN stage · playbook: `.warnyin/workflow/stages/design.md`
4
+ > ออกแบบเชิงเทคนิคแบบ **vertical slice architecture** — แต่ละ slice ตัดผ่านทุก layer ทำงาน end-to-end
5
+
6
+ ## 1. ภาพรวมสถาปัตยกรรม
7
+ - component/service ที่เกี่ยวข้อง (อิง `docs/techstack/*`):
8
+ - แนวทางหลัก:
9
+
10
+ ## 2. Vertical slices
11
+ > หนึ่ง slice = หนึ่งหน่วยคุณค่า end-to-end (UI → API → domain → data → test) → จะกลายเป็น 1 task
12
+ > **ไม่แบ่งตาม layer แนวนอน**
13
+
14
+ | # | Slice (ส่งมอบคุณค่าอะไร) | ตัดผ่าน layer ไหน | → task |
15
+ |---|---|---|---|
16
+ | 1 | | UI · API · domain · data · test | `tasks/<task-1>/` |
17
+ | 2 | | | `tasks/<task-2>/` |
18
+
19
+ ## 3. Data model / schema
20
+ - entity / ตาราง / field ที่เพิ่มหรือแก้:
21
+ - migration (ถ้ามี):
22
+
23
+ ## 4. Interface / contract
24
+ - API contract / event / interface ระหว่าง component:
25
+
26
+ ## 5. Flow
27
+ - data-flow:
28
+ - user-flow:
29
+
30
+ ## 6. ผลกระทบต่อระบบเดิม
31
+ - จุดที่ต้องระวัง / backward compatibility:
32
+
33
+ ## 7. Dependency ระหว่าง slice/task
34
+ > slice/task เชื่อมกันยังไง ลำดับการทำ
35
+
36
+ ```
37
+ task-1 ──▶ task-2 ──▶ task-3
38
+ └──▶ task-4
39
+ ```
40
+
41
+ ## 8. Test strategy ระดับ design
42
+ - จะยืนยันว่า design ทำงานถูกอย่างไร (ภาพรวม — รายละเอียดอยู่ใน task spec):
43
+
44
+ ## 9. Spec delta (เทียบ docs/features/<name>/spec.md ปัจจุบัน)
45
+ > พฤติกรรมที่ change นี้ เพิ่ม/แก้/ลบ — SHIP จะ merge ตามนี้แบบกึ่ง mechanical
46
+ > change ไม่แตะพฤติกรรม feature (refactor/docs/tooling) → เขียน "ไม่มี delta" บรรทัดเดียวพอ
47
+
48
+ ### ADDED
49
+ #### Requirement: <ชื่อ> (→ feature: <feature-name>)
50
+ <พฤติกรรม + scenario ตาม format ของ spec.md>
51
+
52
+ ### MODIFIED
53
+ #### Requirement: <ชื่อใหม่> (→ feature: <feature-name>) [เดิมชื่อ: <ชื่อเก่า> — ใส่เฉพาะกรณี rename]
54
+ <เวอร์ชันใหม่เต็ม> _(เดิม: <สรุปสั้น>)_
55
+
56
+ ### REMOVED
57
+ #### Requirement: <ชื่อเดิมใน spec> (→ feature: <feature-name>) — เหตุผลที่เลิก
@@ -1,69 +1,69 @@
1
- # Discovery — <ชื่อหัวข้องาน>
2
-
3
- > Output ของ Discovery stage · playbook: `.warnyin/workflow/stages/discovery.md`
4
-
5
- | | |
6
- |---|---|
7
- | **Slug** | `<kebab-case>` |
8
- | **สถานะ** | `กำลังทำ` / `ผ่าน gate แล้ว` |
9
- | **วันที่** | `YYYY-MM-DD` |
10
- | **ผู้ร่วมตัดสินใจ** | `<ชื่อ>` |
11
- | **เริ่มจาก** | อ้างอิง `docs/project.md` ส่วนไหน |
12
-
13
- ---
14
-
15
- ## 1. สรุปความเข้าใจร่วมกัน (one-liner)
16
- > เราจะทำ **อะไร** ให้ **ใคร** เพื่อแก้ปัญหา **อะไร** — สรุปได้ใน 1-3 บรรทัด
17
-
18
- ## 2. Problem & Why now
19
- - ปัญหา / โอกาส:
20
- - ทำไมต้องทำตอนนี้:
21
- - ผูกกับเป้าหมายโปรเจกต์ (จาก `docs/project.md`) อย่างไร:
22
-
23
- ## 3. Scope (กว้าง → แคบ)
24
- **In scope (จะทำ)**
25
- -
26
-
27
- **Out of scope (จะไม่ทำในรอบนี้)**
28
- -
29
-
30
- ## 4. Decision Log (เดินทีละกิ่งของ decision tree)
31
- > หนึ่งแถว = หนึ่งการตัดสินใจ บันทึกทันทีที่ตกลงได้
32
-
33
- | # | คำถาม / ประเด็น | ทางเลือก | คำตอบที่แนะนำ | ที่เลือกจริง | เหตุผล |
34
- |---|---|---|---|---|---|
35
- | 1 | | | | | |
36
- | 2 | | | | | |
37
-
38
- ## 5. สมมติฐาน & ข้อจำกัด
39
- - สมมติฐาน:
40
- - ข้อจำกัด (เทคนิค/เวลา/ทรัพยากร/ระบบเดิม):
41
-
42
- ## 6. เกณฑ์ความสำเร็จ (วัดผลได้)
43
- -
44
-
45
- ## 7. Feature ideas / ทางเลือกของวิธีแก้
46
- > ไอเดียคร่าวๆ ที่จะส่งต่อให้ DESIGN พิจารณา (ยังไม่ลงรายละเอียดออกแบบ)
47
- -
48
-
49
- ## 8. Open questions (ที่ยังค้าง)
50
- > ต้องปิดทุกข้อที่ block การออกแบบ ก่อนผ่าน gate
51
- - [ ]
52
-
53
- ## 9. ความเสี่ยงหลัก
54
- -
55
-
56
- ## 10. ลิงก์ที่เกี่ยวข้อง
57
- - Research: `./research.md`
58
- - เอกสารโปรเจกต์: `docs/project.md`, `docs/...`
59
- - โค้ด/ไฟล์ที่ตรวจสอบ:
60
-
61
- ---
62
-
63
- ## ✅ Gate → DESIGN (ดู `.warnyin/workflow/stages/discovery.md` ข้อ 6)
64
- - [ ] Problem / why-now ชัด ผูกกับ project.md
65
- - [ ] Scope in/out ชัด
66
- - [ ] Decision log ปิดทุกประเด็นสำคัญ ไม่มี open question ที่ block
67
- - [ ] success criteria วัดผลได้
68
- - [ ] สมมติฐาน/ข้อจำกัด/ความเสี่ยง บันทึกครบ
69
- - [ ] user ยืนยัน "เข้าใจตรงกันแล้ว"
1
+ # Discovery — <ชื่อหัวข้องาน>
2
+
3
+ > Output ของ Discovery stage · playbook: `.warnyin/workflow/stages/discovery.md`
4
+
5
+ | | |
6
+ |---|---|
7
+ | **Slug** | `<kebab-case>` |
8
+ | **สถานะ** | `กำลังทำ` / `ผ่าน gate แล้ว` |
9
+ | **วันที่** | `YYYY-MM-DD` |
10
+ | **ผู้ร่วมตัดสินใจ** | `<ชื่อ>` |
11
+ | **เริ่มจาก** | อ้างอิง `docs/project.md` ส่วนไหน |
12
+
13
+ ---
14
+
15
+ ## 1. สรุปความเข้าใจร่วมกัน (one-liner)
16
+ > เราจะทำ **อะไร** ให้ **ใคร** เพื่อแก้ปัญหา **อะไร** — สรุปได้ใน 1-3 บรรทัด
17
+
18
+ ## 2. Problem & Why now
19
+ - ปัญหา / โอกาส:
20
+ - ทำไมต้องทำตอนนี้:
21
+ - ผูกกับเป้าหมายโปรเจกต์ (จาก `docs/project.md`) อย่างไร:
22
+
23
+ ## 3. Scope (กว้าง → แคบ)
24
+ **In scope (จะทำ)**
25
+ -
26
+
27
+ **Out of scope (จะไม่ทำในรอบนี้)**
28
+ -
29
+
30
+ ## 4. Decision Log (เดินทีละกิ่งของ decision tree)
31
+ > หนึ่งแถว = หนึ่งการตัดสินใจ บันทึกทันทีที่ตกลงได้
32
+
33
+ | # | คำถาม / ประเด็น | ทางเลือก | คำตอบที่แนะนำ | ที่เลือกจริง | เหตุผล |
34
+ |---|---|---|---|---|---|
35
+ | 1 | | | | | |
36
+ | 2 | | | | | |
37
+
38
+ ## 5. สมมติฐาน & ข้อจำกัด
39
+ - สมมติฐาน:
40
+ - ข้อจำกัด (เทคนิค/เวลา/ทรัพยากร/ระบบเดิม):
41
+
42
+ ## 6. เกณฑ์ความสำเร็จ (วัดผลได้)
43
+ -
44
+
45
+ ## 7. Feature ideas / ทางเลือกของวิธีแก้
46
+ > ไอเดียคร่าวๆ ที่จะส่งต่อให้ DESIGN พิจารณา (ยังไม่ลงรายละเอียดออกแบบ)
47
+ -
48
+
49
+ ## 8. Open questions (ที่ยังค้าง)
50
+ > ต้องปิดทุกข้อที่ block การออกแบบ ก่อนผ่าน gate
51
+ - [ ]
52
+
53
+ ## 9. ความเสี่ยงหลัก
54
+ -
55
+
56
+ ## 10. ลิงก์ที่เกี่ยวข้อง
57
+ - Research: `./research.md`
58
+ - เอกสารโปรเจกต์: `docs/project.md`, `docs/...`
59
+ - โค้ด/ไฟล์ที่ตรวจสอบ:
60
+
61
+ ---
62
+
63
+ ## ✅ Gate → DESIGN (ดู `.warnyin/workflow/stages/discovery.md` ข้อ 6)
64
+ - [ ] Problem / why-now ชัด ผูกกับ project.md
65
+ - [ ] Scope in/out ชัด
66
+ - [ ] Decision log ปิดทุกประเด็นสำคัญ ไม่มี open question ที่ block
67
+ - [ ] success criteria วัดผลได้
68
+ - [ ] สมมติฐาน/ข้อจำกัด/ความเสี่ยง บันทึกครบ
69
+ - [ ] user ยืนยัน "เข้าใจตรงกันแล้ว"
@@ -1,43 +1,43 @@
1
- # Proposal — <ชื่อ change>
2
-
3
- > Output ของ DESIGN stage · playbook: `.warnyin/workflow/stages/design.md`
4
- > **what & why** ของ change นี้
5
-
6
- | | |
7
- |---|---|
8
- | **Slug** | `<kebab-case>` |
9
- | **ประเภท** | `feature` / `bugfix` / `refactor` / `docs` |
10
- | **ขนาด** | `เล็ก` / `กลาง` / `ใหญ่` |
11
- | **วันที่** | `YYYY-MM-DD` |
12
- | **มาจาก Discovery?** | `./discovery.md` หรือ `ไม่มี` |
13
-
14
- ## 1. สรุป change (what)
15
- > เราจะเปลี่ยน/สร้าง/แก้อะไร — 1-3 บรรทัด
16
-
17
- ## 2. ทำไม (why)
18
- - ปัญหา/โอกาส:
19
- - ผลถ้าไม่ทำ:
20
-
21
- ## 3. ทางเลือกที่พิจารณา
22
- | ทางเลือก | ข้อดี | ข้อเสีย | เลือก? |
23
- |---|---|---|---|
24
- | A (แนะนำ) | | | ✅ |
25
- | B | | | |
26
-
27
- - เหตุผลที่เลือก:
28
-
29
- ## 4. Scope
30
- **In scope**
31
- -
32
-
33
- **Out of scope**
34
- -
35
-
36
- ## 5. ผลกระทบ & ความเสี่ยง
37
- - ระบบ/ฟีเจอร์เดิมที่กระทบ:
38
- - ความเสี่ยง + วิธีลดความเสี่ยง:
39
-
40
- ## 6. ลิงก์
41
- - Design (how): `./design.md`
42
- - Tasks: `./tasks/`
43
- - Business: `./business.md` (ถ้ามี)
1
+ # Proposal — <ชื่อ change>
2
+
3
+ > Output ของ DESIGN stage · playbook: `.warnyin/workflow/stages/design.md`
4
+ > **what & why** ของ change นี้
5
+
6
+ | | |
7
+ |---|---|
8
+ | **Slug** | `<kebab-case>` |
9
+ | **ประเภท** | `feature` / `bugfix` / `refactor` / `docs` |
10
+ | **ขนาด** | `เล็ก` / `กลาง` / `ใหญ่` |
11
+ | **วันที่** | `YYYY-MM-DD` |
12
+ | **มาจาก Discovery?** | `./discovery.md` หรือ `ไม่มี` |
13
+
14
+ ## 1. สรุป change (what)
15
+ > เราจะเปลี่ยน/สร้าง/แก้อะไร — 1-3 บรรทัด
16
+
17
+ ## 2. ทำไม (why)
18
+ - ปัญหา/โอกาส:
19
+ - ผลถ้าไม่ทำ:
20
+
21
+ ## 3. ทางเลือกที่พิจารณา
22
+ | ทางเลือก | ข้อดี | ข้อเสีย | เลือก? |
23
+ |---|---|---|---|
24
+ | A (แนะนำ) | | | ✅ |
25
+ | B | | | |
26
+
27
+ - เหตุผลที่เลือก:
28
+
29
+ ## 4. Scope
30
+ **In scope**
31
+ -
32
+
33
+ **Out of scope**
34
+ -
35
+
36
+ ## 5. ผลกระทบ & ความเสี่ยง
37
+ - ระบบ/ฟีเจอร์เดิมที่กระทบ:
38
+ - ความเสี่ยง + วิธีลดความเสี่ยง:
39
+
40
+ ## 6. ลิงก์
41
+ - Design (how): `./design.md`
42
+ - Tasks: `./tasks/`
43
+ - Business: `./business.md` (ถ้ามี)