ผลตรวจ Test
ผลทดสอบแต่ละรอบ จัดเป็นหัวข้อตามเรื่องที่ตรวจ แต่ละข้อบอกเป็นประโยคว่าตรวจอะไร เลือกดูเฉพาะเรื่องของ BA หรือ Technical ได้
ทั้งหมด 219
สำหรับ BA 146
สำหรับ Technical 118
ผ่าน
Mockup workspace: Sitemap / Page flow / Screen Listing
31 ต.ค. 2569, ผ่าน 6 จาก 6 ข้อ
Mockup browser 43 ข้อ + regression 70/25/9 รวม 147 ข้อผ่าน พร้อม Go/race/vet และ artifact validation
1 หัวข้อที่ตรวจ
แบบหน้าจอและเส้นทาง
BA
ตรวจหน้าจออ้างอิงร่วมกันและไม่ตีความ mapping ร่างเป็นข้อยืนยัน
Screen Listing มี 164 screen IDs และ proposal references 6 ภาพ พร้อม detail/variants/provenance/component links
ผ่าน
Sitemap ใช้ภาพ shape เรียงบนลงล่าง จำกัดความกว้างแถว และกรอง Module/Channel โดยไม่ลบข้อมูลที่ซ่อน
ผ่าน
Page flow เลือกครบ 162 Use cases และรักษา Decision/label/เส้นทางจาก canonical source
ผ่าน
W-41 แสดง A01 สร้างบัญชี A05 แนบหลักฐาน และทางข้ามผู้ปกครอง พร้อมภาพ state ของผลลัพธ์
ผ่าน
หน้าจอเดิมใช้หลาย occurrence ได้ แต่ละ occurrence เปลี่ยน state และ mapping แยกกัน
ผ่าน
Editor และ detail แสดงผลได้บนมือถือ พร้อม grid/zoom/label/arrow editing
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง python3 mockups/tools/build_catalog.py --check; cd tracker && go test -race -count=1 ./... && go vet ./...; Playwright mockups-check/usecases-check/workflow-review-check/task-brief-check บน temporary data
ผลจากเครื่องมือทดสอบ ผ่าน 147, ไม่ผ่าน 0, ข้าม 0
หมายเหตุ 147 คือ browser assertions 43+70+25+9; Go/data checks เพิ่มแยกกัน ทดสอบเขียนเฉพาะ /tmp/tnsu-mockup-final/data ไม่ approve Use cases จริง
ผ่าน
ทบทวน Use cases และ canonical decision diagrams
31 ต.ค. 2569, ผ่าน 6 จาก 6 ข้อ
ตรวจครบ 162 กรณี/47 decisions พร้อม browser 95 assertions โดยใช้ temporary data เท่านั้น
1 หัวข้อที่ตรวจ
พฤติกรรมและขอบเขต
BA
ตรวจข้อเสนอทางเลือกและไม่ข้ามเงื่อนไขที่มีผลต่อผู้เรียน
ผลตรวจครบ 162 ID และหมายเหตุสอดคล้องกับ canonical/generated catalog
ผ่าน
W-41 ข้ามข้อมูลผู้ปกครองเมื่อไม่จำเป็นได้จริง ไม่บังคับ Parent Portal ทุกคน
ผ่าน
W-77 ส่งเอกสารเพิ่มกลับไปตรวจใหม่ และทางปฏิเสธไม่ไปผลสำเร็จ
ผ่าน
W-147 ต่อสัญญา/ย้ายห้องไม่ผ่านคืนมัดจำแบบย้ายออก
ผ่าน
W-14 มีเส้นฉุกเฉินแยกก่อนสายอนุมัติปกติ; W-96 รอ EC ไม่ปิด milestone
ผ่าน
W-163 ยืนยันซ้ำแล้วข้ามการหมดสิทธิ์ และไม่ตอบไม่เท่ากับสละโดยอัตโนมัติ
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง python3 docs/agent/tools/check_use_case_review.py; cd tracker && go test -race -count=1 ./... && go vet ./...; Playwright usecases-check.mjs + workflow-review-check.mjs บน temporary server
ผลจากเครื่องมือทดสอบ ผ่าน 95, ไม่ผ่าน 0, ข้าม 0
หมายเหตุ 95 คือ browser assertions (70+25); Go และ data checks ตรวจเพิ่มแยกกัน การรันทดสอบก่อนหน้าพบ pointer นอก viewport และแก้ให้ scroll canvas ก่อนลากแล้วรันครบผ่าน ดู P-013
ผ่าน
ปิดงานจัดทำ Role/Security Matrix ฉบับร่าง
31 ต.ค. 2569, ผ่าน 4 จาก 4 ข้อ
ตรวจหลักฐานฉบับร่างและเปลี่ยนสถานะ Done เฉพาะ T-201/T-202 โดยคงรายการรอ BA/Security ยืนยัน
1 หัวข้อที่ตรวจ
สถานะและหลักฐาน
BA และ Technical
ปิดงาน Agent ที่เสร็จแล้วโดยไม่อนุมัติข้อกำหนดแทนผู้ตรวจ
Role/Security Matrix draft v0.1 มีไฟล์และหัวข้อครบตาม checkpoint C-004
ผ่าน
เปลี่ยนเป็น Done เฉพาะ T-201/T-202 และเวลา finished อ้างอิง C-004
ผ่าน
ข้อมูล review และ task อื่นทุก field คงเดิม
ผ่าน
go test -count=1 ./... ผ่าน
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง ตรวจ artifacts/status diff และ cd tracker && go test -count=1 ./...
ผลจากเครื่องมือทดสอบ ผ่าน 4, ไม่ผ่าน 0, ข้าม 0
หมายเหตุ Done คือจัดทำฉบับร่างเสร็จ ไม่ใช่ยืนยัน business/security requirements; review.todo คงไว้
ผ่าน
ตรวจส่งมอบงานที่ Reviewed แล้ว
31 ต.ค. 2569, ผ่าน 9 จาก 9 ข้อ
Go race/vet ผ่าน Browser 70+9 รวม 79 assertions ผ่าน ใช้ข้อมูลชั่วคราวเพื่อปิดชุดงาน T-408–T-417
2 หัวข้อที่ตรวจ
Use cases และ diagram
BA และ Technical
ตรวจฟีเจอร์ที่ผ่านรีวิวทั้งชุดก่อนเก็บ Git
ตารางแบ่ง module/tabs/filter/collapse และ editor ทั้งชุดผ่าน 70 assertions
ผ่าน
Save/revision history/rollback และ approval invalidation ทำงานครบ
ผ่าน
PNG ส่งออกครบและ background White/Transparent ถูกต้องจริง
ผ่าน
UI review panels, dark mode, mobile และ unsaved edits ผ่าน
ผ่าน
Task briefs และคุณภาพโค้ด
BA และ Technical
รักษาผลรีวิวและรายละเอียดงานที่ตรวจแล้ว
Task briefs ผ่าน 9 assertions รวม T-303 และคำถาม 39 ข้อ
ผ่าน
Go test -race -count=1 ./... ผ่าน
ผ่าน
go vet ./... ผ่าน
ผ่าน
JSON ทุกไฟล์ JavaScript syntax และ git diff --check ผ่าน
ผ่าน
สถานะ T-408–T-417 ยังเป็น Reviewed และไม่มี Reject/Hold ค้าง
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง cd tracker && go test -race -count=1 ./... && go vet ./...; node tracker/e2e/usecases-check.mjs <chrome> <temporary-server> <shots> <playwright> <temporary-data>; node tracker/e2e/task-brief-check.mjs <chrome> <temporary-server> <shots> <playwright>
ผลจากเครื่องมือทดสอบ ผ่าน 79, ไม่ผ่าน 0, ข้าม 0
หมายเหตุ 79 คือจำนวน browser assertions; Go suite ตรวจแยก ไม่มีการอนุมัติหรือแก้ diagram จริงใน repository
ผ่าน
Task briefs และ stakeholder questions
30 ต.ค. 2569, ผ่าน 8 จาก 8 ข้อ
Go race/vet ผ่าน และ browser read-only 9 ข้อผ่าน ครอบคลุม task brief, T-303, questions, mobile และ SQL Server decision
1 หัวข้อที่ตรวจ
ความครบถ้วนของแผนงาน
BA
ให้ task อ่านแล้วเริ่มงานและรู้ว่าจะถามใครได้
งานรอดำเนินการ 13 งานแสดงรายละเอียด outputs และคำถาม 39 ข้อ
ผ่าน
T-303 แสดงคำถาม hosting 5 ข้อ และสถานะยังรอข้อมูล
ผ่าน
คำถามระบุผู้ที่ควรตอบและผลต่อการตัดสินใจ
ผ่าน
dependencies เป็นลิงก์กดไปงานที่เกี่ยวข้องได้
ผ่าน
ผู้รับผิดชอบที่เสนอมีป้ายรอยืนยัน ไม่ถูกตั้งเป็นผู้ได้รับมอบหมายจริง
ผ่าน
คำถามบนมือถือโหมดมืดไม่ทำให้หน้าล้น
ผ่าน
summary T-302 แสดงผลเลือก SQL Server ที่ยืนยันแล้ว
ผ่าน
งานเสร็จแล้วมีบริบทให้อ่านโดยยังรักษาสถานะเดิม
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง cd tracker && go test -race -count=1 ./...; go vet ./...; node e2e/task-brief-check.mjs <headless-shell> <base-url> <output-dir> <playwright-module>
ผลจากเครื่องมือทดสอบ ผ่าน 9, ไม่ผ่าน 0, ข้าม 0
หมายเหตุ passed 9 คือ browser assertions; งาน hosting/data model/scope ยังคง todo ตามเดิม การเติม brief ไม่ใช่การปิดงานเหล่านั้น
ผ่าน
Review panels UI และ PNG export
30 ต.ค. 2569, ผ่าน 4 จาก 4 ข้อ
Browser 70 ข้อผ่าน รวมไฟล์ PNG จริง และ UI Approval/History ทั้งจอเล็กและโหมดมืด
1 หัวข้อที่ตรวจ
Review panels
BA
อ่านสถานะและประวัติได้ง่าย
Approval ที่อนุมัติแล้วแสดงผู้ตรวจและหมายเหตุแทนฟอร์มว่าง
ผ่าน
Revision history มี empty state และ Current version ที่ชัดเจน
ผ่าน
Refresh ประวัติล้มเหลวแล้วยังเก็บรายการเดิมไว้
ผ่าน
Review panels บนมือถือไม่ทำให้หน้าล้น และ screenshot สว่าง/มืดอ่านได้
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง node tracker/e2e/usecases-check.mjs <headless-shell> <temporary-server> <screenshots> <existing-playwright> <temporary-data>
ผลจากเครื่องมือทดสอบ ผ่าน 70, ไม่ผ่าน 0, ข้าม 0
หมายเหตุ ทดสอบการ Save/Approve เฉพาะ /tmp; ตรวจ PNG ที่ดาวน์โหลดจริง ไม่ใช้ screenshot แทนการส่งออก
ผ่าน
Horizontal workflow, revision history, approval และ module groups
30 ต.ค. 2569, ผ่าน 8 จาก 8 ข้อ
Browser 59 ข้อผ่าน Go race suite และ vet ผ่าน ทดสอบการเขียน/Approve เฉพาะข้อมูล /tmp
1 หัวข้อที่ตรวจ
Workflow และรายการ Use cases
BA
จัดและค้นหากระบวนการได้ง่าย พร้อมตรวจยืนยันเป็นราย Use case
ร่างใหม่ไหลซ้ายไปขวาและเว้นช่องตามขนาด shape
ผ่าน
Arrange horizontally เก็บ shape/connection เดิมครบและ Undo คืนตำแหน่งได้
ผ่าน
Toolbar ใช้ปุ่มอังกฤษที่ชัดเจน
ผ่าน
กลุ่ม Module แสดงชื่อเต็ม หุบ/ขยาย และ Expand all / Collapse all ได้
ผ่าน
หุบ Module แล้ว reload ยังจำสถานะ ใช้กับ channel tabs และ filters ได้
ผ่าน
Approve เก็บชื่อ เวลา หมายเหตุ และแสดงสถานะในตาราง
ผ่าน
แก้/Save/Restore แล้วสถานะอนุมัติต้องยืนยันใหม่และไม่ล้าง approval history
ผ่าน
Restore คืนเนื้อหาจาก revision เดิมเป็น revision ใหม่ เก็บ intermediate revisions ครบ
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง cd tracker && go test -race -count=1 ./...; go vet ./...; node e2e/usecases-check.mjs <headless-shell> <temporary-server> <screenshots> <existing-playwright> <temporary-data>
ผลจากเครื่องมือทดสอบ ผ่าน 59, ไม่ผ่าน 0, ข้าม 0
หมายเหตุ 59 คือจำนวน browser assertions; tests ของ approval ไม่เคยเขียนข้อมูลจริงใน repo
ผ่าน
Use cases tabs / full descriptions / Ctrl-wheel และ Overview order
30 ต.ค. 2569, ผ่าน 5 จาก 5 ข้อ
Browser regression ผ่าน 41 ข้อ พร้อม Go race suite และ vet ผ่าน ตรวจหน้า 8099 แบบอ่านอย่างเดียวผ่าน
1 หัวข้อที่ตรวจ
การอ่านและค้นหา Use cases
BA
อ่านรายการตามช่องทางและอ่านเนื้อหา diagram ครบ
แท็บทั้งหมด Frontend Backoffice และ Integration ใช้ร่วมกับ filters ได้
ผ่าน
ตารางแสดงยาวลงมาตามหน้าโดยไม่มีความสูงจำกัด
ผ่าน
description จากต้นฉบับแสดงครบ ตัดเป็นบรรทัดสั้น และร่างใหม่ไม่ซ้อนกัน
ผ่าน
description ยาวหลายบรรทัดอยู่ภายใน Start End Process และ Decision ครบทุกตัวอักษร
ผ่าน
Current Task อยู่ก่อน Milestone ทั้งหมดบนหน้าภาพรวมจริงพอร์ต 8099
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง cd tracker && go test -race -count=1 ./...; go vet ./...; node e2e/usecases-check.mjs <headless-shell> <temporary-server> <screenshots> <existing-playwright> <temporary-data>; main read-only smoke
ผลจากเครื่องมือทดสอบ ผ่าน 41, ไม่ผ่าน 0, ข้าม 0
หมายเหตุ passed 41 หมายถึง browser regression; ยังตรวจ main 8099 แบบอ่านอย่างเดียวและ Go suite แยกต่างหาก
ผ่าน
Diagram Snap to grid และเส้นเชื่อมหักมุม
30 ต.ค. 2569, ผ่าน 4 จาก 4 ข้อ
Browser ผ่าน 24 ข้อหลังปรับ Snap to grid และเส้น orthogonal บนข้อมูล /tmp
1 หัวข้อที่ตรวจ
การจัดตำแหน่งและเส้นเชื่อม
BA และ Technical
จัด diagram ให้อยู่แนวเดียวกันและอ่านทางเดินของเส้นได้ง่าย
ลาก shape แล้วพิกัดขยับตรงกริด 20 หน่วย
ผ่าน
ทุกช่วงของเส้นเชื่อมเป็นแนวนอนหรือแนวตั้ง หักมุม 90°
ผ่าน
shape ที่เพิ่มและพิกัดหลังลากยังตรงกริดหลังบันทึกและเปิดใหม่
ผ่าน
Regression browser ทั้ง 24 ข้อผ่าน รวม Fit/กึ่งกลาง ซูม ลากเส้น สองผู้ใช้ SSE undo/redo โหมดมืดและมือถือ
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง node tracker/e2e/usecases-check.mjs <headless-shell> <temporary-server> <screenshots> <existing-playwright> <temporary-data>
ผลจากเครื่องมือทดสอบ ผ่าน 24, ไม่ผ่าน 0, ข้าม 0
หมายเหตุ การลากทดสอบใช้จุดที่ไม่อยู่กึ่งกลางระหว่างสองช่องกริด เพื่อไม่ผูก assertion กับทศนิยมจาก SVG zoom
ผ่าน
Use cases Table view และ Diagram editor
30 ต.ค. 2569, ผ่าน 8 จาก 8 ข้อ
Go suite พร้อม race detector และ go vet ผ่าน Browser ผ่าน 23 ข้อบนข้อมูลสำเนา รวมการจัดกึ่งกลางและ Fit ทั้งหมดตามคำขอล่าสุด
1 หัวข้อที่ตรวจ
Catalog และการแสดงผล
BA
ใช้ Use cases เดิมเพื่ออ่านและแก้ workflow ได้สะดวก
ตารางแสดงครบ 162 Use cases และกรอง Module / คำค้นหาได้
ผ่าน
Diagram ฉบับร่างเก็บขั้นตอนต้นฉบับครบและมีข้อมูลผู้เกี่ยวข้อง
ผ่าน
เปิด diagram แล้วเห็นทุก shape อยู่กึ่งกลางทั้งสองแนว
ผ่าน
ผู้ใช้ซูมเข้าและกลับมาดูพอดีทั้งหมดได้
ผ่าน
เพิ่ม shape 4 แบบ แก้ข้อความ และลาก shape กับเส้นเชื่อมได้
ผ่าน
แก้ข้อความและหัวลูกศรต้น–ปลายของเส้นเชื่อมได้
ผ่าน
ลบ shape พร้อมเส้นที่เกี่ยวข้อง และ undo/redo คืนได้
ผ่าน
ข้อมูลบันทึกส่วนกลางยังอยู่หลังเปิดใหม่ โหมดมืดและจอมือถือใช้งานได้
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง cd tracker && go test -race -count=1 ./...; go vet ./...; node e2e/usecases-check.mjs <headless-shell> <temporary-server> <screenshots> <existing-playwright> <temporary-data>
ผลจากเครื่องมือทดสอบ ผ่าน 23, ไม่ผ่าน 0, ข้าม 0
หมายเหตุ passed 23 คือ browser assertions; Go suite ผ่านทุกข้อด้วย ใช้ Playwright ที่มีอยู่แล้ว ไม่ได้เพิ่ม dependency ให้ tracker ทดสอบการเขียนบนข้อมูล /tmp เท่านั้น
ผ่าน
Tracker โหลดช้าเมื่อเปิดหลาย tab
30 ต.ค. 2569, ผ่าน 5 จาก 5 ข้อ
ตรวจว่า tab ที่ไม่ได้ดูคืนช่องเชื่อมต่อ, กลับมาแล้ว live update ทำงานต่อ และ CSS/JS โหลดจาก cache ผ่านทุกข้อ
1 หัวข้อที่ตรวจ
Browser (E2E)
BA
เปิดหลาย tab แล้วไม่ช้า
tab ที่ถูกซ่อนปิดการเชื่อมต่อ live updateการเชื่อมต่อลดลง 1
ผ่าน
กลับมาที่ tab แล้วป้ายเป็น "อัปเดตแบบเรียลไทม์" อีกครั้ง
ผ่าน
เปิดหน้าที่สองแล้ว CSS/JS มาจาก cache ทั้งหมด
ผ่าน
Live update ยังทำงาน (live-check บนข้อมูลสำเนา)32 → 33 task โดยไม่ reload
ผ่าน
Timeline (timeline-check)9 ข้อ
ผ่าน
ผ่าน
Timeline เต็มจอและเส้นแบ่ง
30 ต.ค. 2569, ผ่าน 9 จาก 9 ข้อ
ตรวจว่า Timeline ใช้พื้นที่เต็มจอ, chart ยืดถึงขอบขวา, ลากเส้นแบ่งได้และจำค่า, ย่อ/ขยายแถวได้ และตำแหน่งแถบยังถูกต้องหลังเปลี่ยนเป็น % ผ่านทุกข้อ
3 หัวข้อที่ตรวจ
Full width (E2E)
BA
chart ใช้พื้นที่จอได้เต็ม
หน้า Timeline กว้างถึงขอบ browsermain 1348 + เมนู 252 = 1600 px
ผ่าน
chart ยืดถึงขอบขวา ไม่มีที่ว่าง
ผ่าน
เส้นแบ่งรายละเอียด / chart (E2E)
BA
ปรับความกว้างช่องรายละเอียดได้ตามต้องการ
ลากที่หัวตารางแล้วช่องรายละเอียดกว้างขึ้น380 → 540 px
ผ่าน
ลากที่ขอบแถวแล้วช่องรายละเอียดแคบลง540 → 440 px
ผ่าน
กดลูกศรขวาแล้วขยับ 20 px
ผ่าน
reload แล้วจำความกว้างไว้
ผ่าน
กด Home แล้วกลับค่าเดิม380 px
ผ่าน
ย่อ / ขยาย (E2E)
BA
ซ่อนแถวข้างใน Milestone / Epic ได้จริง
กดย่อ Epic แล้ว task ข้างในหายจากจอ32 → 25 แถว (7 task)
ผ่าน
กดขยายแล้วกลับมาครบ
ผ่าน
ผ่าน
Timeline (Gantt chart)
30 ต.ค. 2569, ผ่าน 14 จาก 14 ข้อ
ตรวจหน้า Timeline: คำนวณช่วงเวลาและตำแหน่งแถบถูกต้องทุกระดับเวลา, ย่อ/ขยาย, เลื่อนไปที่ตอนนี้ และ Live update ไม่ทำให้ตำแหน่ง scroll หาย ผ่านทุกข้อ
3 หัวข้อที่ตรวจ
Timeline layout
BA
ความยาวของแถบตรงกับเวลาที่ใช้จริง
Task 1 วันกว้าง 1 วันพอดีในมุมมองวัน44 px
ผ่าน
Task ที่ In Progress / Wait for review ยืดถึงตอนนี้
ผ่าน
แผน (start → due) แสดงเป็นกรอบเส้นประ
ผ่าน
Task ที่ไม่มีวันขึ้นว่า "ยังไม่ได้กำหนดวัน" และนับเป็น Unscheduled
ผ่าน
แถบ Epic / Milestone ครอบทุก task ข้างใน และแสดง % ที่เสร็จ
ผ่าน
Milestone target แสดงเป็น ◆
ผ่าน
Scales (Hour / Day / Week)
BA และ Technical
สลับระดับเวลาได้และหน้าไม่หนักเกินไป
ทั้ง 3 scale เปิดได้ (HTTP 200) และ scale ที่ไม่รู้จักกลับเป็น Day
ผ่าน
Week เริ่มวันจันทร์
ผ่าน
Hour view จำกัด 21 วันรอบตอนนี้เมื่อแผนยาว
ผ่าน
Minimum span: Day 21 วัน, Week 12 สัปดาห์, Hour 48 ชม. ไม่ให้ chart แคบเกินไป
ผ่าน
Interaction (E2E)
BA และ Technical
ใช้งานใน browser จริง
เปิดหน้าแล้วเส้น "ตอนนี้" อยู่ในจอ
ผ่าน
ย่อ Milestone แล้วซ่อนแถวลูกทั้งหมด และจำค่าหลัง reload
ผ่าน
Live update ไม่ทำให้ตำแหน่ง scroll แนวนอนหาย120 → 120 px ในมุมมองชั่วโมง
ผ่าน
Light / Dark / Mobile แสดงผลถูกต้อง
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง go test -count=1 -v ./... ; timeline browser check
ผลจากเครื่องมือทดสอบ ผ่าน 30, ไม่ผ่าน 0, ข้าม 0 ใช้เวลา 0.3s (go test) + 20s (E2E)
หมายเหตุ go test: 26 ผล (20 test + 6 subtest), E2E timeline 4 checks
ผ่าน
File viewer, Reviewed status และ Done สีเขียว
30 ต.ค. 2569, ผ่าน 14 จาก 14 ข้อ
ตรวจว่าไฟล์แนบเปิดเป็นหน้า HTML ในแท็บใหม่ได้ และปลอดภัย, สถานะ Reviewed ทำงานตามที่ตกลง และทุก flow เดิมยังผ่านหลังเปลี่ยน ผ่านทุกข้อ
3 หัวข้อที่ตรวจ
File viewer (refs)
BA
กดไฟล์แนบแล้วเปิดเป็นหน้าที่อ่านง่ายในแท็บใหม่
Refs ในหน้า Wait for review เปิด /files/... ในแท็บใหม่
ผ่าน
Role Matrix แสดงเป็น HTML: 10 ตาราง, 115 แถว, TOC 13 หัวข้อ
ผ่าน
Row filter: พิมพ์ "การเงิน" แล้วเหลือแถวที่เกี่ยวข้องพบ 2 แถว
ผ่าน
Anchor link ไปหัวข้อถูกจุด#3-approval-authority-matrix
ผ่าน
Mermaid diagram render ครบ13 จาก 13 diagram ใน 05-workflows.md
ผ่าน
Path ใน code span ของข้อความรีวิวกดเปิดไฟล์ได้
ผ่าน
โฟลเดอร์แสดงรายการไฟล์ และ /files/tracker redirect ไป /files/tracker/
ผ่าน
Task status: Reviewed
BA
Done = Agent ทำเสร็จและทดสอบผ่าน, Reviewed = ผู้รีวิว Approve แล้ว
กด Approve แล้ว task เป็น Reviewed
ผ่าน
Progress % นับทั้ง Done และ Reviewed
ผ่าน
Done สีเขียว, Reviewed สีน้ำเงินพร้อม ✓ ทั้ง Light และ Dark
ผ่าน
Task ที่ Approve ก่อนหน้านี้ 4 งานย้ายเป็น ReviewedT-302, T-401, T-403, T-404
ผ่าน
Regression (E2E)
BA และ Technical
flow เดิมยังทำงานหลังเปลี่ยน
Live update: browser เห็น task count เปลี่ยนเองโดยไม่ reload
ผ่าน
Theme: Light / Dark / System ผ่าน 5 กรณี
ผ่าน
Review form: Reject + Checklist + Save ผ่าน 7 checks บนข้อมูลสำเนา
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง go test -count=1 -v ./... ; node e2e/{live,theme,review}-check.mjs ; viewer check
ผลจากเครื่องมือทดสอบ ผ่าน 43, ไม่ผ่าน 0, ข้าม 0 ใช้เวลา 0.3s (go test) + ~40s (E2E)
หมายเหตุ go test: 25 ผล (19 test + 6 subtest). E2E: live 1, theme 5, review form 7, viewer 5 checks
ผ่าน
Review form: Approve / Reject / Hold
30 ต.ค. 2569, ผ่าน 15 จาก 15 ข้อ
ตรวจ Review form ที่ให้กรอกผลรีวิวแล้วกด Save ได้จากหน้าเว็บ: บันทึกลง milestones.json ถูกต้อง, กัน CSRF และไม่ทับข้อความที่กำลังพิมพ์ตอนมี Live update ผ่านทุกข้อ
3 หัวข้อที่ตรวจ
Review workflow
BA
กด Approve / Reject / Hold แล้วสถานะงานเปลี่ยนตามที่ตกลงกัน
Approve: review เป็น Done และ task เป็น Done พร้อมวันที่ Finished
ผ่าน
Reject: review เป็น Rejected และ task กลับไปเป็น In Progress
ผ่าน
Hold: review เป็น Hold และ task ยังอยู่ใน Wait for review
ผ่าน
Checklist ที่ติ๊กถูกบันทึกไว้
ผ่าน
ทุกครั้งที่ Save จะต่อท้ายใน Review history ไม่ทับของเดิม
ผ่าน
หลัง Save กลับไปที่ tab ตามผล พร้อม notice ว่าบันทึกแล้ว
ผ่าน
Form validation
BA
ผู้รีวิวรู้ทันทีว่ากรอกอะไรไม่ครบ และไม่ต้องพิมพ์ใหม่
Reject / Hold โดยไม่เขียนรายละเอียด ระบบไม่ยอมบันทึก
ผ่าน
ฟอร์มแสดงซ้ำพร้อมข้อความและชื่อที่กรอกไว้
ผ่าน
Task ที่ยังไม่ได้ส่งรีวิว บันทึกผลไม่ได้
ผ่าน
Browser (E2E)
BA และ Technical
ทดสอบใน headless Chrome กับข้อมูลชุดสำเนา ไม่แตะข้อมูลจริง
Live update ไม่ทับข้อความที่กำลังพิมพ์ในฟอร์ม
ผ่าน
เลือก Reject, ติ๊ก Checklist, กรอกชื่อ แล้ว Save ได้
ผ่าน
Redirect ไป tab Rejected พร้อม notice
ผ่าน
Decision แสดงผลเป็น Markdown
ผ่าน
ไฟล์ข้อมูลบันทึกผลและชื่อผู้รีวิว
ผ่าน
Browser จำชื่อผู้รีวิวไว้ใช้ครั้งต่อไป
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง go test -count=1 -v ./... ; node e2e/review-check.mjs <chrome> http://localhost:8098 <copy>/milestones.json T-201
ผลจากเครื่องมือทดสอบ ผ่าน 29, ไม่ผ่าน 0, ข้าม 0 ใช้เวลา 0.3s (go test) + 12s (E2E)
หมายเหตุ go test: 22 ผล (16 test + 6 subtest), E2E review form: 7 checks บน server แยกที่ port 8098 กับข้อมูลสำเนา ข้อมูลจริงไม่ถูกแก้
ผ่าน
Tracker รอบ 2: หน้าย่อย, Checkpoint, Test แบบจัดกลุ่ม, Review tabs
30 ต.ค. 2569, ผ่าน 27 จาก 27 ข้อ
ตรวจว่าข้อมูลงานถูกต้อง หน้าเว็บทุกหน้าเปิดได้ การรีวิวแยกตามสถานะ และการอัปเดตสดยังทำงาน หลังเพิ่มหน้าย่อย Milestone / Epic / Task, ประวัติ Checkpoint จาก Agent, หน้าผลทดสอบแบบจัดกลุ่ม และ tab การรีวิว ผ่านทุกข้อ
7 หัวข้อที่ตรวจ
Data validation
BA
ถ้ามีคนแก้ไฟล์ข้อมูลผิด ระบบต้องไม่แสดงข้อมูลเพี้ยน และบอกได้ว่าผิดตรงไหน
JSON เสีย: หน้าเว็บยังแสดงข้อมูลชุดก่อนหน้า พร้อม error message
ผ่าน
ไม่รับ status ที่สะกดผิดใช้ได้เฉพาะ todo, in_progress, review, done
ผ่าน
ไม่รับ ID ซ้ำ (task / epic / milestone)
ผ่าน
ไม่รับ milestone / epic / task ที่ไม่มี ID
ผ่าน
ไม่รับ review state ที่ไม่รู้จักใช้ได้เฉพาะ todo, rejected, hold, done
ผ่าน
tests.json / problems.json / checkpoints.json เป็น optional
ผ่าน
Progress calculation
BA
ตัวเลขบนหน้าภาพรวมต้องตรงกับงานจริง
Task count ตาม status ถูกต้องทุกระดับ (project / milestone / epic)
ผ่าน
Current Task: แยก steps done / remaining และ % ถูกต้อง
ผ่าน
Epic code สร้างอัตโนมัติเช่น E0.1, E1.2
ผ่าน
Review queue เรียงตาม requested date (เก่าสุดก่อน)
ผ่าน
Date format เป็นปี พ.ศ.30 ต.ค. 2569
ผ่าน
Pages & Routing
BA และ Technical
ทุกหน้าเปิดได้ และไปถึงรายละเอียดของงานได้ทุกระดับ
ทุก page ได้ HTTP 200 จากข้อมูลจริงทดสอบกับ server ที่รันอยู่ด้วย 11 หน้า ได้ 200 ทุกหน้า
ผ่าน
Milestone / Epic / Task page มี breadcrumb
ผ่าน
Multi-milestone: sidebar แสดงทุก milestone, epic code เป็น E1.x
ผ่าน
URL ที่ไม่มีจริงได้ 404milestone / epic / task ที่ไม่มี และ epic ที่อยู่ผิด milestone
ผ่าน
Review tabs & Checklist
BA
ผู้รีวิวเห็นงานแยกตามผลการรีวิว และรู้ว่าต้องทำอะไรเป็นขั้นตอน
Tab Todo / Rejected / Hold / Done แยกถูกต้องค่าที่ไม่รู้จักกลับไปที่ Todo
ผ่าน
Overview นับเฉพาะ Todo เป็น Review
ผ่าน
Decision render เป็น Markdown
ผ่าน
Test results view (BA / Technical)
BA และ Technical
แต่ละฝ่ายเลือกดูเฉพาะหัวข้อที่เกี่ยวกับงานของตัวเองได้
Filter BA / Technical แสดง group และ count ถูกต้อง
ผ่าน
มี case fail แล้ว run เป็น "ไม่ผ่าน"
ผ่าน
Checkpoint log
BA
บันทึกสรุปจาก Agent เรียงถูกและไม่มีรายการเสีย
เรียงล่าสุดก่อน รองรับทั้ง timestamp และ date
ผ่าน
ไม่รับ checkpoint ที่ไม่มี ID, ID ซ้ำ หรือ timestamp ผิด
ผ่าน
Theme (Light / Dark / System)
BA และ Technical
เลือกธีมได้และจำค่าที่เลือก
ระบบตั้งเป็นโหมดมืด + เลือก "ตามระบบ" ได้ธีมมืด
ผ่าน
ระบบตั้งเป็นโหมดสว่าง + เลือก "ตามระบบ" ได้ธีมสว่าง
ผ่าน
กด "มืด" แล้วเปลี่ยนเป็นธีมมืดทันที
ผ่าน
reload แล้วยังเป็นธีมมืด
ผ่าน
กลับไป "ตามระบบ" แล้วลบค่าที่จำไว้
ผ่าน
สำหรับ Technical: คำสั่งและผลดิบ
คำสั่ง go test -count=1 -v ./... ; node e2e/live-check.mjs ; node e2e/theme-check.mjs
ผลจากเครื่องมือทดสอบ ผ่าน 25, ไม่ผ่าน 0, ข้าม 0 ใช้เวลา 0.5s (go test) + 15s (e2e)
หมายเหตุ go test: 19 ผล (13 test + 6 subtest), e2e อัปเดตสด 1 ชุด, e2e ธีม 5 กรณี และตรวจ 11 หน้าบน server ที่รันอยู่