ทำไม API contract ใน production ของฉันถึงเสียหายเฉพาะในแบบที่ CI pipeline มองไม่เห็น?
โอกาส
การทดสอบ consumer-driven contract จับการเปลี่ยนแปลงที่ทำให้เสียหายได้ก่อน merge แต่มันตรึง contract ไว้ ณ เวลา PR และไม่มีกลไกในการตรวจจับการเคลื่อนตัวเชิงความหมายที่สะสมในบริการ live หลังการ deploy ทีมเพิ่มฟิลด์ที่ไม่มีเอกสารใน production hotfix เปลี่ยนรูปแบบ error เพื่อแก้ incident หรือผ่อนคลาย validation โดยไม่แตะ OpenAPI spec World Quality Report 2025 ระบุว่า API schema drift ที่ตรวจไม่พบเป็นหนึ่งในสามสาเหตุอันดับต้นของ production incident ในระบบกระจาย และประมาณว่าประมาณ 70% ของ API failure ใน production ผ่านการตรวจสอบ CI ทั้งหมด ไม่มีเครื่องมือปัจจุบันใดที่ตรวจสอบ production traffic จริงเทียบกับ contract ที่เผยแพร่อย่างต่อเนื่อง และแสดงการละเมิดขณะที่กำลังสะสมแทนที่จะรอจนถึงเวลา merge
ทำไมถึงสำคัญ
การตรวจสอบ traffic จริงเทียบกับ contract ที่คุณเผยแพร่จะปิดช่องว่างไมล์สุดท้ายระหว่างสิ่งที่ API ของคุณสัญญาไว้กับสิ่งที่มันหยุดส่งมอบอย่างเงียบๆ
วิธีที่ผมให้คะแนนโอกาส
คะแนนโอกาสเป็นมุมมองส่วนตัวของผม ไม่ใช่การวัดผล โดยดูว่ามันเจ็บปวดแค่ไหน บ่อยแค่ไหนที่มันกัดกิน และมีทางแก้อยู่น้อยเพียงใดในปัจจุบัน คะแนนสูงกว่าหมายความว่าผมคิดว่าคุ้มค่าแก่การสร้างมากกว่า
ความเจ็บปวดที่มันก่อขึ้นเมื่อปรากฏตัว
ความถี่ที่คนจริงๆ เจอมัน
ความขาดแคลนของเครื่องมือที่ดีสำหรับมันในปัจจุบัน
ปัญหาอื่นที่น่าแก้ไข
ทำไมซอฟต์แวร์ที่เราพึ่งพามากที่สุดถึงใช้งานยากที่สุด?
Techทำไมฉันยังไม่เป็นเจ้าของข้อมูลที่ตัวเองสร้างขึ้นมาเลยแม้แต่น้อย?
Techทำไมฉันถึงไม่สามารถรับใบรับรองที่พิสูจน์ได้ว่าข้อมูลของฉันถูกลบออกจริง?
Techทำไมฉันถึงไม่รู้ได้ว่าสิ่งที่กำลังทำงานอยู่ตรงกับสิ่งที่ SBOM ของฉันประกาศไว้หรือไม่
Techทำไม security scanner ของฉันจึงพลาดประเภทช่องโหว่ที่ AI assistant เขียนบ่อยที่สุด?
Techทำไม AI agent ของฉันจึงส่งข้อมูลสุขภาพของยุโรปผ่านเซิร์ฟเวอร์ในสหรัฐอเมริกาโดยไม่แจ้งเตือน?