# ชุดเตรียมทดลองอ่านและทำชิ้นงาน P5

รุ่น p5-prep-5 · 14 ตุลาคม 2026 · PK-Research · CC BY 4.0

สถานะ **preparation only; ผู้ทดลองจริง B=0 / O=0 / D=0; ผลผู้เรียน NOT_RUN** ผู้ใช้ยังไม่มีผู้เข้าร่วม จึงเตรียมขั้นตอนและแบบบันทึกก่อน ไม่มีการรับสมัคร ติดต่อ หรือผลทดลองในชุดนี้ P5 เต็มยังเปิดและ CPX-Sim ยังพัก

เริ่มจาก [หน้าชุดทดลองและตารางไฟล์เริ่มงาน](https://drone.pk-research.work/knowledge/drone-applications/practice/#learner-trial-kit), [คู่มือผู้ดำเนินกิจกรรม](https://drone.pk-research.work/downloads/drone-applications/trial-kit/facilitator-guide.md) และ [บัตรงานสามบทบาทพร้อมตัวเลือกกรณีศึกษา](https://drone.pk-research.work/downloads/drone-applications/trial-kit/reader-task-cards.md). บัตรนำร่องยังเป็น B=M01, O=M06, D=C01 รวม 12 outcome ID ที่มีอยู่ก่อนกรณีศึกษา; S1–S3 และ S5–S7 เพิ่มบัตรเลือก 18 ใบและ 72 ID ที่ออกแบบไว้แล้ว. ไม่มีการทดลองจริงหรือสร้างหลักสูตร/ใบรับรองใหม่ และชุดนี้ไม่ครอบคลุมทุก 11 ภารกิจ/33 เส้นทาง

สำหรับบัตรนำร่อง ให้สังเกตการหาเส้นทางในเว็บก่อน แล้วส่ง [แพ็กเก็ต M01-B](https://drone.pk-research.work/downloads/drone-applications/trial-kit/pilot-m01-b-v0.md), [แพ็กเก็ต M06-O](https://drone.pk-research.work/downloads/drone-applications/trial-kit/pilot-m06-o-v0.md) หรือ [แพ็กเก็ต C01-D](https://drone.pk-research.work/downloads/drone-applications/trial-kit/pilot-c01-d-v0.md) เพียงหนึ่งไฟล์ตามบทบาท. แพ็กเก็ตให้ข้อมูลตั้งต้นและช่องงาน v0/v1 โดยไม่แนบแนวคำตอบหรือผลรันผู้เขียน; D ยังอ่าน expected ที่เป็นข้อกำหนดก่อนรันได้. ผู้ดำเนินเก็บ rubric แยกสำหรับช่วงตรวจและจดการเห็นตัวอย่างสาธารณะก่อน v0 ตามจริง เว็บนี้ไม่ได้ปิดคำตอบจากผู้ร่วม

## ตรวจก่อนเริ่มรอบจริง

1. มอบหมายผู้ดำเนินกิจกรรม ผู้ดูแลไฟล์และผู้ตรวจ rubric จริงให้ชัดก่อนนัดผู้ร่วม; ถ้าคนเดียวทำหลายบทบาท ให้บันทึกข้อจำกัดของการตรวจตนเอง. ตกลงพื้นที่เก็บที่ควบคุมสิทธิ์ การเข้าถึงและระยะเก็บก่อนสร้างรหัสผู้ร่วม
2. เลือกบัตรหนึ่งใบต่อ session, เก็บสำเนาบท/โจทย์/ข้อมูล/rubric ฉบับที่ใช้และบันทึก `task_version`, `kit_version`, `rubric_version` ให้ตรง. ตรวจเครื่องมือของ D ตามงานที่เลือก; หากรันไม่ได้ บันทึกอุปสรรค ไม่ยืมผล host ผู้เขียน
3. ใช้ [ตารางไฟล์เริ่มงานสามบทบาท](https://drone.pk-research.work/knowledge/drone-applications/practice/#จัดชุดเปิดอ่านก่อนเริ่มชิ้นงาน-v0) และแพ็กเก็ตตามบทบาทแยกไฟล์เริ่มกับไฟล์ตรวจ ให้ทำ v0 ก่อนเปิดแนวคำตอบหรือ worked example เมื่อทำได้. เว็บและบทมีแนวคำตอบที่เปิดได้อยู่แล้ว; ถ้าเห็นเฉลยก่อน v0 หรือได้รับคำใบ้ ให้บันทึกชื่อไฟล์/ช่วงเวลา/เนื้อหาที่เห็นใน `assistance_note` และใช้ `assistance_level=worked_example` หรือระดับความช่วยเหลือที่ตรงจริง. D อ่าน expected เพื่อเขียน test ก่อนรันได้ แต่ต้องเก็บ actual ของตนแยกจากผล host ผู้เขียน. ยังตรวจชิ้นงานได้ แต่ไม่อ้างว่าเป็นการทำเองโดยไม่มีตัวช่วย และไม่เทียบกับรอบที่ไม่เห็นเฉลยราวกับโจทย์เดียวกัน
4. เก็บ v0, ข้อทัก, v1 และหลักฐานลองซ้ำแยกฉบับ. ผล `meets` ต้องมีหลักฐานตาม rubric ของผู้ร่วมจริง; ข้อสำคัญปิดได้เมื่อมีผล retest จริง. ถ้าผู้ร่วมพัก/หยุด ให้เก็บเพียงสิ่งที่ตกลงไว้และคงผลที่ไม่สังเกตเป็น `not_observed` หรือ `NOT_RUN` ตามขั้นที่เกิดขึ้น

ตัวตรวจ `scripts/verify-drone-p5-trial-kit.py` ใน repository ตรวจเฉพาะ **ชุดเผยแพร่**: บัตร 21 ใบ, 84 outcome ID ที่ตรงกับ mapping KSEC, SHA-256 ของ rubric กรณีศึกษา 6 ไฟล์, CSV สาธารณะ 4 ไฟล์ที่ยังไม่มีแถว และลิงก์ภายในชุด. ตัวตรวจไม่อ่านสำเนาบันทึกภายในหรือชิ้นงานผู้เรียน จึงไม่ใช่การตรวจผล P5 และไม่ยืนยันความพร้อมของผู้เข้าร่วมหรือผู้ตรวจ

## ไฟล์บันทึกและวิธีเปิด

CSV ทั้งสี่เป็น UTF-8 comma-separated มี **หัวตารางเท่านั้น ไม่มีแถวข้อมูล** ทำสำเนาในที่เก็บที่ควบคุมสิทธิ์ก่อนกรอก เปิดด้วยตัวเลือก UTF-8 และเก็บ ID/รุ่น/วันเวลาเป็นข้อความ ถ้าข้อความมี comma ให้ครอบด้วย double quotes และ escape double quote ด้วยการซ้ำ ห้ามให้ spreadsheet ประมวลผลข้อความจากผู้เข้าร่วมเป็นสูตร

- [session-record.csv](https://drone.pk-research.work/downloads/drone-applications/trial-kit/session-record.csv): หนึ่งแถวต่อ session/task บันทึกแผน สถานะจริง ฐานก่อนเริ่มและการช่วยเหลือ
- [outcome-record.csv](https://drone.pk-research.work/downloads/drone-applications/trial-kit/outcome-record.csv): หนึ่งแถวต่อ outcome/ชิ้นงานหนึ่งรุ่น/การตรวจหนึ่งครั้ง เก็บผลเดิมแล้วเพิ่มแถวตรวจซ้ำ
- [issue-retest-record.csv](https://drone.pk-research.work/downloads/drone-applications/trial-kit/issue-retest-record.csv): หนึ่งแถวต่อเหตุการณ์เปิด แก้ หรือตรวจซ้ำของ issue เชื่อมแถวก่อนหน้า
- [source-review-record.csv](https://drone.pk-research.work/downloads/drone-applications/trial-kit/source-review-record.csv): หนึ่งแถวต่อแหล่ง/ขอบข้ออ้าง/รอบตรวจจริง ไม่กรอกว่าตรวจแล้วเพียงเพราะเผยแพร่หน้าเว็บ

## พจนานุกรมร่วม

ทุก field เป็นข้อความ ช่องว่างหมายถึงยังไม่มีข้อมูล ไม่ใช่ศูนย์หรือผ่าน Fields ที่บังคับเมื่อสร้างแถว: ID ของแถว, ID ที่เชื่อมงาน, รุ่นที่ใช้และสถานะที่เกี่ยวข้อง วันที่/ผลจริงกรอกเมื่อเกิดขึ้นเท่านั้น วันที่ใช้ ISO 8601 `YYYY-MM-DD`; เวลาถ้าเก็บให้มี UTC offset ID ต้องไม่ซ้ำในไฟล์เดียวกัน

| Field | ความหมายและการใช้ |
|---|---|
| session_id / participant_code / role | รหัสกิจกรรม รหัสผู้ร่วมแบบไม่ใช้ชื่อ และ B/O/D; ใช้ชุดเดียวกันในทุกไฟล์ที่เกี่ยวข้อง |
| task_id / task_version / kit_version | บัตรนำร่อง M01-B, M06-O, C01-D หรือบัตรเพิ่มเติม CSF-B/O/D, CSC-B/O/D, CSS-B/O/D, CSL-B/O/D, CSW-B/O/D, CSA-B/O/D; ฉบับชุดนี้ p5-prep-5; บันทึกฉบับที่ใช้จริง ไม่แก้ข้อมูลรอบก่อน |
| outcome_id / rubric_version | รหัสตามบัตรที่เลือก; รุ่นเกณฑ์นำร่อง M01=2026-10-11, M06=1.0 (2026-10-11), C01=p4-toy-1; กรณีศึกษาที่ rubric ยังไม่มีชื่อรุ่น ให้บันทึก `sha256:<64 อักขระฐานสิบหก>` ของไบต์ `rubric.md` ฉบับที่ใช้จริงและเก็บสำเนาไว้ ไม่ใช้ชื่อกฎ CSV เป็นรุ่น rubric |
| artifact_ref / artifact_version | ตัวชี้ไปชิ้นงานในที่เก็บควบคุมสิทธิ์และรุ่น v0/v1 เป็นต้น ไม่ใส่ URL เปิดสาธารณะหรือข้อมูลส่วนบุคคล |
| reviewer_role / observer_role / owner_role | บทบาทของผู้ตรวจ ผู้สังเกต หรือผู้รับผิดชอบ; ไม่ต้องใส่ชื่อจริง การระบุบทบาทยังไม่ถือว่ามอบหมายคนแล้ว |

ค่า SHA-256 ของ rubric ในชุดเผยแพร่วันที่ 13 ตุลาคม 2026 สำหรับตรวจฉบับก่อนเริ่มกิจกรรม:

| กรณี | `rubric_version` ของไฟล์ปัจจุบัน |
|---|---|
| S1 น้ำท่วม | `sha256:0885a44a4a3a3617b0c8393b82bd3cbe97fa0d4a503a00e7f4ab8a92f64e9b26` |
| S2 ชายฝั่ง | `sha256:12cd9c83861f8718f97118b79c3aca87c1fefb73a08de3dea72478310f0190cf` |
| S3 โครงสร้าง | `sha256:9febd24233cdae228db57027a92c16bdcdeae65000a45965211c6616c7a5e15d` |
| S5 ลำเลียง | `sha256:1ce6931715a74d85daab15b48a328f62d80d8dd3e3345da69cfe5774a837ead5` |
| S6 ไฟป่า | `sha256:30ca534d53c5d5540859c2a8237b1c0204b3f639a019ce6b93eda3297f6a803f` |
| S7 เกษตร | `sha256:615f2e57dedcad7f7b8315d36bd9ec1f4d92e3e777349b4ea57cfd8d3fdf606b` |

คำนวณจาก **ไบต์ไฟล์** ไม่ใช่ข้อความที่คัดลอกใน spreadsheet; ถ้าไฟล์ที่ใช้จริงมีค่าอื่น ให้เก็บสำเนา ค่า SHA-256 จริงและเหตุที่ต่างในบันทึก แล้วตรวจว่ากำลังใช้ rubric รุ่นใดก่อนให้ผล. ตัวอย่างเมื่อมี Python: `python -c "from pathlib import Path; import hashlib; print(hashlib.sha256(Path('rubric.md').read_bytes()).hexdigest())"`. ค่า `task_version` กับ `kit_version` เป็นรุ่นบัตรและชุดบันทึก จึงไม่แทนรุ่น rubric

### session-record

| Field | นิยาม |
|---|---|
| session_status | planned / not_started / in_progress / completed / stopped; completed หมายถึงจบกิจกรรม ไม่ใช่ผ่านผลลัพธ์ |
| planned_date / actual_date | วันนัดถ้ามี / วันที่ทำจริง; ไม่ใช้วันเตรียมเอกสารเป็นวันทดลอง |
| observer_role | ผู้สังเกตหรือ self_review เมื่อทวนเอง; ต้องเปิดเผยข้อจำกัดนี้ |
| prerequisite_check / remediation | หลักฐานตรวจพื้นฐาน K/S และความพร้อมร่วมงาน E/C / งานเติมและการทวนใหม่ |
| assistance_level / assistance_note | none / navigation / clarification / worked_example; ระบุว่าเมื่อใดและช่วยอะไร ไม่หักคะแนนอัตโนมัติ |
| stop_reason / start_time / end_time | เหตุหยุดโดยไม่บังคับเปิดเผยเรื่องส่วนตัว / เวลาเริ่มและจบถ้าเก็บ; ว่างได้ |
| artifact_ref / notes | ที่เก็บชิ้นงาน / ข้อสังเกตจำเป็น ไม่บันทึกคำพูดส่วนตัวโดยไม่จำเป็น |

### outcome-record

| Field | นิยาม |
|---|---|
| outcome_record_id / previous_record_id | รหัสการตรวจครั้งนี้ / รหัสครั้งก่อนเมื่อส่งซ้ำ; ครั้งแรกเว้น previous_record_id |
| rating | NOT_RUN = ยังไม่มีการทำกิจกรรม; meets = หลักฐานตรง rubric; needs_revision = มีหลักฐานแต่ต้องแก้; insufficient_evidence = ข้อมูลยังไม่พอตัดสิน; not_observed = รอบที่เกิดขึ้นไม่ได้สังเกตผลนี้ |
| evidence_basis | ระบุส่วน/บรรทัดของชิ้นงาน การสังเกต หรือผล host ของผู้เรียนเองที่รองรับ rating |
| reviewed_date / reviewer_role | วันตรวจจริงและบทบาทผู้ตรวจ; NOT_RUN ยังไม่ใส่วันตรวจ |
| feedback / next_action | ข้อทักตามเกณฑ์และสิ่งที่ต้องทำ/ขอเพิ่ม ไม่รวมเป็นเกรดรวม |

### issue-retest-record

| Field | นิยาม |
|---|---|
| issue_event_id / issue_id / previous_event_id | รหัสเหตุการณ์ / รหัสปัญหาคงเดิม / เหตุการณ์ก่อนหน้าที่แก้หรือตรวจซ้ำ |
| issue_status | open / needs_fix / ready_for_retest / closed_after_retest / deferred; การแก้ข้อความหรือ build ผ่านให้ได้เพียง ready_for_retest |
| observed_date / observation | วันพบจริงและสิ่งที่เห็น ระบุขั้นงาน/ผลกระทบ; คำพูดตรงเป็นทางเลือกและต้องตัดข้อมูลระบุตัว |
| severity | blocking = ทำต่อไม่ได้หรือทำให้ข้อสรุปผิด; important = ต้องช่วย/เกณฑ์กำกวม; minor = ขัดข้องเล็กน้อย |
| fix_version / retest_date / retest_evidence_ref | รุ่นแก้ / วันลองซ้ำจริง / หลักฐานควบคุมสิทธิ์; closed_after_retest ต้องมีครบและผลรองรับ |
| retest_result | NOT_RUN / resolved / persists / insufficient_evidence; resolved ต้องอ้างงานลองซ้ำ ไม่ใช่ความเห็นผู้แก้ |
| owner_role / next_action | ผู้รับผิดชอบที่ต้องมอบหมายและขั้นต่อไป; deferred ต้องบอกเหตุและเงื่อนไขกลับมาตรวจ |

### source-review-record

| Field | นิยาม |
|---|---|
| source_review_id / previous_review_id | รหัสรอบตรวจและรอบก่อนเมื่อมี |
| source_url / source_register_ref / claim_scope / affected_chapters | URL ต้นทาง ทะเบียนอ้างอิง ข้ออ้าง/หน้าที่ใช้ และบทที่ได้รับผล |
| trigger | manual_review / owner_change / rule_change / tool_version / field_limitation / broken_link |
| owner_role / owner_assignment_status | บทบาทดูแลและ not_assigned / assigned; ปัจจุบันยัง not_assigned |
| checked_date / source_version / source_accessible | วันเปิดตรวจจริง / edition หรือวันที่แหล่งระบุ / yes หรือ no; ขณะวางแผนยังเว้นว่าง |
| finding / impact / decision / next_action | สิ่งที่อ่านพบจริง ขอบผลกระทบ การคง/แก้/พักข้ออ้าง และงานต่อ; ถ้าเข้าไม่ได้ให้บอกขอบที่ยังตรวจไม่ได้ |
| recheck_status | pending / needs_revision / verified_within_scope / inaccessible; verified_within_scope ต้องมีหลักฐานอ้างตำแหน่งใน finding และไม่ขยายเป็นตรวจทุกแหล่งแล้ว |

## การเก็บและขอบเขต

เก็บไฟล์ที่กรอกและชิ้นงานผู้เข้าร่วมในพื้นที่ควบคุมการเข้าถึงนอก public repository รหัสแทนชื่ออาจเชื่อมกลับถึงคนได้ ก่อนทดลองจริงต้องตกลงผู้เข้าถึง การใช้ข้อมูลและระยะเก็บกับผู้ร่วม ไม่ขอชื่อ อีเมล เลขประจำตัว พิกัด หรือข้อมูลอ่อนไหวเป็นค่าเริ่มต้น ชุดนี้ไม่ใช่แบบยินยอมทางกฎหมาย ผู้ร่วมขอความช่วยเหลือ พักหรือหยุดได้โดยสมัครใจ

เงื่อนไขปิด P5 เต็ม: มีการทดลองจริงครบสามบทบาทพร้อมหลักฐาน ตรวจซ้ำประเด็นสำคัญจนมีหลักฐานแก้ และมอบหมายเจ้าของดูแลแหล่งอ้างอิงจริง ขณะนี้ยังไม่ครบ การตรวจเว็บไซต์/ผู้เขียนไม่แทนผลผู้เรียน
