# CPX P3-04a: ส่งรายงานและข้อเสนอภารกิจข้ามฝ่ายในเครื่อง

วันที่ 8 ตุลาคม 2026 · เว็บ 1.17.4 · ต้นแบบหน้าฝึกเดิม 1.16.28

## สิ่งที่เพิ่ม

ชุดนี้เริ่มวงจรจากฐานของแต่ละฝ่ายที่ยังไม่มีข้อมูลภารกิจเตรียมไว้ล่วงหน้า ฝ่ายกู้ภัยส่งรายงาน ศูนย์ประสานรับข้อมูลแล้วเสนอภารกิจ ทีมโดรนรับข้อเสนอและเลือกจองอย่างชัดเจน ใช้กติกาภารกิจเดิมกับข้อมูลที่ส่งจากฝ่ายเจ้าของในชุดทดลอง

| ขั้น | สิ่งที่ต้องเกิด | สิ่งที่ยังไม่ถือว่าเกิด |
|---|---|---|
| ส่งรายงาน | ฝ่ายกู้ภัยบันทึกรายงานและข้อความส่งออก | ศูนย์ยังไม่ได้รับทราบโดยคน |
| ส่งถึงและนำข้อมูลเข้า | ตรวจต้นทาง ผู้รับ สิทธิ์ และหลักฐานรับข้อความ | ไม่สร้างการรับทราบหรือข้อเสนอภารกิจให้อัตโนมัติ |
| ศูนย์รับและเสนอ | ผู้ใช้รับรายงานก่อนเสนอภารกิจให้ทีมโดรน | การเสนอไม่เท่ากับยืนยันทีมหลัก |
| ทีมโดรนรับและจอง | รับข้อเสนอฉบับที่ทราบล่าสุด แล้วจองเพื่อเตรียมแผน | ยังต้องจัดทรัพยากรและผ่านการยืนยันก่อนรับภารกิจ |

การนำข้อมูลเข้าใช้เฉพาะเหตุการณ์ที่จำเป็นต่อข้อความนั้น และตรวจย้อนกับข้อมูลต้นทางที่บันทึกจริง สำเนาวัตถุที่ผู้เรียกสร้างเองไม่เป็นหลักฐานต้นทาง การส่งซ้ำไม่ควรเพิ่มผลธุรกิจซ้ำ และการส่งถึงยังแยกจากการกดรับข้อความของผู้ฝึก

## ความสดและการหยุด

ข้อมูลใหม่จากฝ่ายอื่นทำให้ revision ของฝ่ายผู้รับเปลี่ยนได้ แม้ยังไม่มีคำสั่งใหม่จากผู้ใช้ฝ่ายนั้น คำสั่งที่อ้าง revision เก่าจึงต้องถูกปฏิเสธ การอ่านสรุปแยกเลขคำสั่งต้นทางออกจากลำดับการนำข้อมูลเข้า

เมื่อได้รับข้อเสนอภารกิจฉบับใหม่ ต้องตรวจฉบับก่อนตอบรับ สำเนาในเครื่องยืนยันได้เฉพาะข้อมูลที่รับมาแล้ว การตรวจว่ามีข้อมูลใหม่กว่าที่ยังค้างในเครือข่าย และการยืนยันความพร้อมข้ามฝ่ายทั้งหมด ยังเป็นงานที่ต้องทำต่อ

## วิธีตรวจและขอบเขต

ผ่าน 6 กรณีใหม่ รวมชุดทดลอง 25 กรณี และต้นแบบเดิม 147 กรณี ตรวจวงจรจริงจากฐานว่าง หลักฐานปลอม/ผิดผู้รับ/สิทธิ์ที่ถอน ข้อความข้ามลำดับ ฉบับภารกิจใหม่ ข้อมูลสรุปที่ล้าหลัง การเปิดฐานกลับมา การย้อนรายการเมื่อบันทึกล้มเหลว ผลตอบกลับหาย และการหยุดที่ปิดกั้นข้อมูลใหม่

```text
node --test tools/cpx-cloud-feasibility/*.test.mjs
node --test tools/cpx-local/*.test.mjs
```

ใช้ฐานทดลองใหม่และข้อมูลสังเคราะห์ การทดสอบในเครื่องไม่เท่ากับส่งผ่านเครือข่ายจริง ตัวตนและหลักฐานต้นทางยังเป็น fixture ที่ host จัดการ ไม่ใช่ JWT หรือสิทธิ์ของหน่วยงานจริง ผลการปิดแล้วเปิดฐานใหม่ไม่แทน lifecycle ของ Cloudflare

ฐานชุดนี้ใช้ schema 3 แยกจากชุดเดิม ไม่มีการแปลงฐานอัตโนมัติ และยังไม่เชื่อมการกู้คืนของ P3-03 หรือการยืนยันรับกลับไปตัดรายการส่งค้าง การเปลี่ยนรายชื่อผู้รับระหว่างฉบับภารกิจยังถูกปฏิเสธ เพื่อไม่เปิดเผยประวัติข้อเสนอที่ผู้รับใหม่ไม่มีสิทธิ์เห็น

P3-04a เป็นส่วนย่อยของ P3-04 การส่งผลการจองกลับศูนย์ ความพร้อมของแผนและทรัพยากร การยืนยันทีมหลัก ระบบสิทธิ์ถาวร การเริ่มฝึกต่อ และการกู้คืนบนแพลตฟอร์ม ยังต้องเชื่อมและตรวจต่อ แบบบันทึกคลาวด์ทั้ง 16 กรณียังคง NOT_RUN

## เครื่องมือ Cloudflare ที่ตรวจแล้ว

ตรวจรุ่นที่ติดตั้ง: Wrangler 4.129.0 มี `createTestHarness()` และ type สำหรับทดสอบ Worker อยู่แล้ว จึงเลือกใช้เป็นฐานทดลองแพลตฟอร์มในขั้นถัดไปโดยยังไม่เพิ่ม dependency รอบนี้ การพบ API ไม่ใช่หลักฐานว่าทดสอบแพลตฟอร์มผ่านแล้ว

[เอกสารทดสอบ Cloudflare](https://developers.cloudflare.com/workers/testing/) แนะนำ Vitest integration สำหรับ unit test และ [integration test harness](https://developers.cloudflare.com/workers/testing/test-harness/) สำหรับทดสอบการทำงานร่วมกัน เอกสาร [การตั้งค่า harness](https://developers.cloudflare.com/workers/testing/test-harness/configure/) รองรับการระบุโครงการ Worker แยกกัน ตรวจเอกสารวันที่ 8 ตุลาคม 2026

ห้องฝึกบน Cloudflare ยังต้องกำหนดวิธีเข้าสู่ระบบ กติกาถอนสิทธิ์ การเก็บข้อมูล วงเงิน และตรวจความสามารถบัญชีก่อนเปิดบริการ ผลทดสอบโปรแกรมไม่แทนการซักซ้อมกับผู้ใช้หรือการตรวจรับเหตุจริง
