- เปิดตัวฟีเจอร์ Code Review ในรูปแบบรีเสิร์ชพรีวิว โดยส่ง ทีมมัลติเอเจนต์ เข้าไปตรวจทุก PR เพื่อค้นหาบั๊กเชิงลึกที่มนุษย์อาจพลาดได้ง่าย
- เมื่อปริมาณโค้ดที่วิศวกร Anthropic ผลิตได้ต่อคนเพิ่มขึ้น 200% ในช่วง 1 ปีที่ผ่านมา การรีวิวโค้ดจึงกลายเป็นคอขวด และเกิดปัญหาที่หลาย PR ได้รับเพียงการไล่อ่านผ่านแทนการรีวิวอย่างลึกซึ้ง
- ก่อนนำมาใช้ มีเพียง 16% ของ PR ที่ได้รับคอมเมนต์รีวิวอย่างมีสาระ แต่หลังนำมาใช้เพิ่มขึ้นเป็น 54% โดยการอนุมัติ PR ยังคงเป็นหน้าที่ของมนุษย์
- ใน PR ขนาดใหญ่ (มากกว่า 1,000 บรรทัด) 84% มีสิ่งที่ตรวจพบและรายงานปัญหาเฉลี่ย 7.5 รายการ โดยมี อัตราการตรวจพลาดเป็นบวกต่ำกว่า 1%
- ค่าใช้จ่ายในการรีวิวคิดตามการใช้โทเคน เฉลี่ย $15~25 ต่อ PR พร้อมฟีเจอร์ควบคุมค่าใช้จ่าย เช่น ลิมิตระดับองค์กรรายเดือนและการควบคุมแยกตามรีโพสิทอรี
ปัญหาคอขวดของการรีวิวโค้ด
- เมื่อปริมาณโค้ดที่วิศวกร Anthropic ผลิตได้ต่อคนเพิ่มขึ้น 200% ในช่วง 1 ปีที่ผ่านมา การรีวิวโค้ดจึงกลายเป็นคอขวดของกระบวนการพัฒนา
- ฝั่งลูกค้าก็ร้องเรียนปัญหาเดียวกันทุกสัปดาห์ โดยในภาวะที่นักพัฒนางานล้นมือ หลาย PR จึงจบลงที่ การไล่อ่านผ่านแทนการรีวิวเชิงลึก
- พัฒนาขึ้นเพื่อเป็นตัวเลือกที่เข้มงวดกว่าและมีต้นทุนสูงกว่า Claude Code GitHub Action แบบโอเพนซอร์สเดิม โดยมีเป้าหมายเพื่อให้ทุก PR มีรีวิวเออร์ที่เชื่อถือได้
- ก่อนนำมาใช้ มีเพียง 16% ของ PR ที่ได้รับคอมเมนต์รีวิวอย่างมีสาระ แต่หลังนำมาใช้เพิ่มขึ้นเป็น 54%
- การอนุมัติ PR ยังคงเป็นหน้าที่ของมนุษย์ และฟีเจอร์นี้ทำหน้าที่ลดช่องว่างเพื่อให้รีวิวเออร์สามารถครอบคลุมโค้ดที่ถูกส่งออกใช้งานจริงได้มากพอ
วิธีการทำงาน
- เมื่อมีการเปิด PR ระบบจะ ส่งทีมเอเจนต์ออกไปทำงาน เพื่อค้นหาบั๊กแบบขนาน
- แต่ละเอเจนต์จะตรวจสอบความถูกต้องของบั๊กเพื่อ กรอง false positive และจัดลำดับตามระดับความรุนแรง
- ผลลัพธ์จะถูกส่งกลับใน PR เป็น คอมเมนต์สรุปเดี่ยวที่มีสัญญาณรบกวนต่ำและคุณภาพสูง พร้อมคอมเมนต์แบบอินไลน์สำหรับบั๊กเฉพาะจุด
- ขนาดของการรีวิวจะปรับอัตโนมัติตามขนาด PR โดยการเปลี่ยนแปลงที่ใหญ่และซับซ้อนจะใช้เอเจนต์มากขึ้นและวิเคราะห์ลึกขึ้น ส่วนการเปลี่ยนแปลงเล็กน้อยจะใช้เส้นทางแบบเบา
- จากเกณฑ์การทดสอบ ใช้เวลารีวิวเฉลี่ยประมาณ 20 นาที
กรณีใช้งานจริง
- จากการใช้งานภายในหลายเดือน PR ขนาดใหญ่ (มากกว่า 1,000 บรรทัด) 84% มีสิ่งที่ตรวจพบ และรายงานปัญหาเฉลี่ย 7.5 รายการ
- ส่วน PR ขนาดเล็ก (น้อยกว่า 50 บรรทัด) 31% มีสิ่งที่ตรวจพบ และรายงานปัญหาเฉลี่ย 0.5 รายการ
- วิศวกรส่วนใหญ่เห็นด้วยกับสิ่งที่ตรวจพบ และ สัดส่วนที่ถูกระบุว่าเป็น false positive ต่ำกว่า 1%
- ในกรณีหนึ่ง การแก้ไขเพียงหนึ่งบรรทัดในบริการโปรดักชันเป็น diff ที่ปกติอาจได้รับอนุมัติอย่างรวดเร็ว แต่ Code Review กลับ ตั้งธงเป็นระดับวิกฤต
- การเปลี่ยนแปลงนั้นมี failure mode ที่ อาจทำให้ระบบยืนยันตัวตนของบริการเสียหายได้ ซึ่งเป็นปัญหาที่อ่านผ่าน diff แล้วมองข้ามได้ง่าย แต่เมื่อมีคนชี้ให้เห็นก็ชัดเจนทันที
- มีการแก้ไขก่อน merge และวิศวกรคนนั้นแชร์ว่าหากทำคนเดียวก็คงจับไม่เจอ
- ในโอเพนซอร์สมิดเดิลแวร์ของ TrueNAS สำหรับ PR รีแฟกเตอร์ ZFS encryption นั้น Code Review พบเจอบั๊กเดิมในโค้ดข้างเคียง
- เป็นปัญหา type mismatch ที่ ล้างแคชกุญแจเข้ารหัสอย่างเงียบ ๆ ทุกครั้งที่ซิงก์
- เป็นปัญหาที่แฝงอยู่ในโค้ดที่ PR แตะต้อง ซึ่งไม่ใช่ประเภทที่ผู้รีวิวแบบมนุษย์ที่สแกนชุดการเปลี่ยนแปลงจะหาเจอได้ทันที
ค่าใช้จ่ายและการควบคุม
- ปรับแต่งมาเพื่อความลึกในการตรวจ จึงมีต้นทุนสูงกว่าโซลูชันแบบเบาอย่าง Claude Code GitHub Action
- ค่าบริการรีวิวคิดตาม การใช้โทเคน โดยเฉลี่ย $15~25 ตามขนาดและความซับซ้อนของ PR
- ตัวเลือกสำหรับผู้ดูแลในการควบคุมค่าใช้จ่ายและการใช้งาน:
- ลิมิตระดับองค์กรรายเดือน: ตั้งยอดใช้จ่ายรวมต่อเดือนสำหรับการรีวิวทั้งหมด
- การควบคุมแยกตามรีโพสิทอรี: เปิดใช้งานรีวิวเฉพาะรีโพสิทอรีที่เลือก
- แดชบอร์ดการวิเคราะห์: ติดตามจำนวน PR ที่ถูกรีวิว อัตราการยอมรับ และค่าใช้จ่ายรวมของการรีวิว
วิธีเริ่มต้นใช้งาน
- เปิดให้ใช้งานในรูปแบบ รีเสิร์ชพรีวิว (เบตา) สำหรับแพ็กเกจ Team และ Enterprise
- ผู้ดูแลสามารถเปิดใช้งาน Code Review ได้จากการตั้งค่า Claude Code ติดตั้ง GitHub App แล้วเลือกรีโพสิทอรีที่จะให้รันการรีวิว
- หลังเปิดใช้งาน นักพัฒนาจะได้รับ การรีวิวอัตโนมัติ สำหรับ PR ใหม่โดยไม่ต้องตั้งค่าเพิ่มเติม
8 ความคิดเห็น
ช่วงนี้ความเร็วในการปล่อยของของ Anthropic นี่บ้าคลั่งจริงๆ
ดูเหมือนจะประกอบฟลายวีลเสร็จแล้ว คือพอปรับปรุงเครื่องมือพัฒนา ก็ทำให้การพัฒนาของตัวเองเร็วขึ้นไปด้วย
บรรยากาศแบบสตาร์ทอัพที่ปล่อยอะไรออกมาวันละอย่างนี่ชัดมาก
คงกำลังกระตุ้น OpenAI อย่างหนักเลย
เห็นได้เลยว่ากำลังทำงานกันอย่างสนุกมาก
ถ้าลดค่าใช้จ่ายลงได้ก็น่าจะดีนะครับ
ให้ Claude สร้างโค้ด แล้วก็ให้ Claude รีวิวโค้ด..
ดูเหมือนว่าแพ็กเกจส่วนบุคคลจะยังไม่รองรับนะครับ ไม่รู้ว่าต่อไปก็จะยังไม่รองรับอยู่ไหม?
ดูเหมือนว่าการปรับปรุงแบบเวียนซ้ำได้เริ่มต้นขึ้นแล้ว
คุณ Claude เร็วเกินไปหน่อยไหมครับ... ฮือๆ
Claude : ก็ไม่ใช่มนุษย์.... นี่นา;;;;