Node.js 26.8.2 อัปเดต OpenSSL, Undici และ npm: Patch ที่ควร Canary ก่อนขยับ Current
Node.js 26.8.2 ออกเมื่อ 9 กันยายน 2026 ในสาย Current จุดสำคัญไม่ได้อยู่ที่ API ใหม่ก้อนใหญ่ แต่อยู่ที่ dependency ใต้ runtime: OpenSSL ขยับเป็น 3.5.8, Undici เป็น 8.10.2 และ npm เป็น 11.19.1 พร้อมปรับ Corepack เป็น 0.36.0
ผลกระทบจึงกระจายคนละชั้นครับ TLS handshake และ certificate behavior อยู่ฝั่ง OpenSSL, fetch/HTTP client อยู่ฝั่ง Undici, ส่วน install และ lifecycle scripts อยู่ฝั่ง npm การเห็นคำว่า patch ไม่ได้แปลว่าควรอัปเดต image แล้วปล่อยพร้อมกันทุก service
release note ยัง deprecate Server.prototype._listen2 ซึ่งเป็น private API ของ node:net ถ้าโค้ดแอปไม่แตะ underscore API โดยตรงก็ไม่น่ากระทบ แต่ native addon หรือ framework เก่าควรถูกค้นซ้ำก่อน upgrade
Canary ที่มีสัญญาณชัด
| ชั้น | สิ่งที่ตรวจ | สัญญาณถอยกลับ |
|---|---|---|
| TLS | outbound handshake, mTLS, custom CA | handshake error หรือ latency สูงขึ้น |
| HTTP | redirect, proxy, streaming body, timeout | fetch error และ socket reset |
| package | clean install จาก lockfile | lock drift หรือ lifecycle script ต่างไป |
| native | addon load และ ABI smoke test | module load failure |
Node 26 ยังเป็นสาย Current หาก production วางบน LTS ไม่ควรใช้ข่าวนี้เป็นเหตุย้าย major โดยอัตโนมัติ แยกการตัดสินใจสองข้อ: อัปเดต patch ภายในสายที่ใช้อยู่ กับย้ายจาก LTS ไป Current ซึ่งมีขอบเขตความเสี่ยงคนละแบบ
หน้า release มี SHASUMS แบบลงลายเซ็นให้ตรวจ artifact ได้ ทีมที่สร้าง base image เองควร verify checksum ก่อนบรรจุ และ pin digest ของ image ใน deployment เพื่อให้ rollback กลับ artifact เดิมได้จริง
Recap
- ตรวจว่า production ใช้ Current หรือ LTS ก่อนเลือก target
- แยก smoke test TLS, HTTP, package manager และ native addon
- ค้นการใช้ private API
_listen2ใน dependency เก่า - verify SHASUMS และเก็บ image digest สำหรับ rollback