คุณเป็นวิศวกรที่รับผิดชอบแก้ Sales Deal Platform ให้แก้ D07 (P2): ข้อความสรุปงานของ Sales ไม่ตรงกับ Funnel บริบท: แอป https://sale-deal-platform.rome.agency/; source repository romeagency/Sales-Deal-Platform เคสอ้างอิง: UAT-029; ภาพหลักฐาน: E31, E52 วิธีทำซ้ำ: เปิด /deals และเทียบ Funnel กับข้อความใต้แผนภาพ ผลที่พบ: ข้อความ งานเปิด 4 / ยื่นไฟแนนซ์ 2 คงอยู่ ขณะที่ Funnel 46→47 และยื่นไฟแนนซ์ 1 ผลที่คาดหวัง: จำนวนงานเปิดและขั้นที่ควรเร่งสัมพันธ์กับข้อมูลเดียวกัน ผลกระทบ: คำแนะนำลำดับงานไม่น่าเชื่อถือ คำแนะนำ: คำนวณข้อความสรุปจากชุดข้อมูลเดียวกับรายการ แนวทางตรวจและแก้: ตรวจว่าข้อความงานเปิด ปิดเดือนนี้ และงานไฟแนนซ์เป็นค่า mock หรือ query คนละ scope ใช้ข้อมูลจริงร่วมกับ Funnel ระบุช่วงเวลาและเจ้าของเดียวกัน จัดการ refresh หลังสร้างหรือย้าย stage เกณฑ์รับงานและ regression ที่ต้องยืนยัน: จำนวนงานเปิด/ไฟแนนซ์ตรงกับรายการที่กรองด้วย owner และช่วงเวลาเดียวกัน; สร้างดีลใหม่แล้วตัวเลขเปลี่ยนถูกต้อง; ทดสอบต้นเดือน สิ้นเดือน และไม่มีข้อมูล วิธีทำงาน: 1. เปิด repository แอป romeagency/Sales-Deal-Platform และอ่าน AGENTS.md/แนวทางโครงการก่อน เริ่มจาก route ที่เกี่ยวข้องแล้วตามไปยัง service, schema และ endpoint จริง ห้ามแก้เพียงเว็บไซต์รายงาน UAT 2. รายงานนี้เป็นหลักฐานจาก UI เมื่อ 12 ก.ย. 2026 ไม่ใช่การตรวจ source code จึงต้องยืนยันปัญหาบน revision ปัจจุบันและหาสาเหตุจาก code ก่อนแก้ ถ้าแก้ไปแล้วให้ตรวจ regression และรายงานหลักฐาน 3. แก้เป็นส่วนที่ตรวจทานได้ รักษา public contract และกฎธุรกิจเดิมที่ถูกต้อง ถ้าขาดนิยามธุรกิจให้ระบุคำถามเฉพาะและทำส่วนที่ไม่ขึ้นกับคำตอบต่อ ห้ามเดากฎสำคัญเพื่อให้ test ผ่าน 4. ใช้ fixture หรือข้อมูลสังเคราะห์ใน local/test environment ทดสอบทั้ง positive, negative, reload/persistence และ role ที่เกี่ยวข้อง ห้ามจ่ายเงินจริง ส่งไฟแนนซ์จริง ลบข้อมูลจริง หรือเปลี่ยนสิทธิ์/ราคา production 5. สรุป root cause, ไฟล์ที่แก้, test ที่รันและผล, ข้อจำกัด, migration/backfill ที่จำเป็น และวิธี rollback หากเกี่ยวข้อง อย่าเปลี่ยนผล UAT เดิมเป็น PASS จนกว่าจะมีการ retest ที่ระบุวันและ revision ชัดเจน 6. ทำ implementation และตรวจสอบให้เสร็จใน branch งานนี้; ไม่ merge หรือ deploy production โดยไม่มีคำสั่งเพิ่มเติม