ตัวละคร REODE ดั้งเดิมที่ปรับแต่งแล้ว: ใบหน้าแอกโซลอเติลสีครีมอมชมพูยิ้มแย้ม สวมเฮดเซ็ตสีกรมท่าและเลนส์สีฟ้าอมเขียว
กลับไปที่ห้องจัดแสดง

REODE

Code migration

ก่อนแก้ไข หาสาเหตุร่วมก่อน

เอเจนต์ไมเกรตโค้ด Java/Spring ผสานการแปลงตามกฎเข้ากับการซ่อมที่ใช้โมเดลช่วย และตรวจโค้ดที่เปลี่ยนด้วย build และ test เป็นโปรเจกต์งาน

2026.03 — 2026.04

โปรเจกต์งาน · ระบบไมเกรชันและการตรวจยืนยัน

  • CLIพัฒนาแล้ว · โปรเจกต์งาน

ทำให้เอเจนต์ซ่อมอ่านการตั้งค่าก่อน

เอเจนต์ที่พยายามแก้ทีละ setter คือเอเจนต์ซ่อมภายในผลิตภัณฑ์ REODE สิ่งที่การพัฒนาเปลี่ยนคืออินพุตของมัน โค้ดและข้อมูลลูกค้าเป็นข้อมูลส่วนตัว

คำอธิบายสัญลักษณ์ทั้งหมด

วิธีอ่าน · หลักเดียวกันสำหรับทุกกรณี

  • คอลัมน์คือผู้กระทำ จากบนลงล่างคือเวลา
  • เส้นทึบ: การส่งต่อหรือขั้นถัดไปที่บันทึกไว้
  • เส้นสีลาพิสหนา ↩: ข้อค้นพบที่ส่งงานกลับ
  • เส้นประ: ไม่ใช่การรันที่บันทึกไว้ (กฎที่เขียนไว้ คำแนะนำที่ไม่มีอำนาจ ขอบเขตที่ยังไม่ตรวจยืนยัน)
  • สี่เหลี่ยม: การกระทำ
  • มุมมน: สถานะหรือข้อค้นพบที่สังเกตได้
  • มุมพับ: อาร์ติแฟกต์หรือหลักฐาน
  • คอลัมน์ลายเส้นทแยง: ส่วนของผลิตภัณฑ์ที่กำลังพัฒนา (ไม่ใช่เอเจนต์ที่ใช้สร้าง)

March 21, 2026

กลุ่มข้อผิดพลาด build ต้นฉบับ และการตั้งค่า Lombok กลายเป็นอินพุตของการซ่อม

  1. กำลังพัฒนาเอเจนต์ซ่อมของ REODE

    การสังเกต · ข้อค้นพบพยายามแก้ข้อผิดพลาด setter ราว 40 รายการทีละรายการ · ไม่ได้ตรวจ @Data / POM

  2. คนนักพัฒนา

    การกระทำอ่านซอร์สและการตั้งค่า build ก่อนแก้ไข

    • ส่งต่ออินพุตการซ่อมเปลี่ยนแล้ว→ บิลด์ baseline ต้นฉบับ · จัดกลุ่มข้อผิดพลาดรูปแบบเดียวกัน (การเปลี่ยนแปลงในการพัฒนา)
  3. เซสชันการทำงานการเปลี่ยนแปลงในการพัฒนา

    การกระทำบิลด์ baseline ต้นฉบับ · จัดกลุ่มข้อผิดพลาดรูปแบบเดียวกัน

    • ส่งต่อ→ รวบรวมหลักฐาน: พาธ · ตัวอย่างซอร์ส 3 ไฟล์ · annotation · POM (การเปลี่ยนแปลงในการพัฒนา)
  4. กฎที่เขียนไว้นโยบายผู้ร่วมพัฒนา

    กฎ · ยังไม่ตรวจยืนยันแผนงาน · worktree ที่เป็นเจ้าของ

    • ไม่ใช่การรันที่บันทึกไว้นโยบายกำหนด→ บิลด์ baseline ต้นฉบับ · จัดกลุ่มข้อผิดพลาดรูปแบบเดียวกัน (การเปลี่ยนแปลงในการพัฒนา)
  5. เซสชันการทำงานการเปลี่ยนแปลงในการพัฒนา

    การกระทำรวบรวมหลักฐาน: พาธ · ตัวอย่างซอร์ส 3 ไฟล์ · annotation · POM

    • ส่งต่อ→ แก้ Lombok แบบเชิงกำหนดก่อน · ข้าม LLM หากบิลด์ใหม่ผ่าน (การเปลี่ยนแปลงในการพัฒนา)
  6. กฎที่เขียนไว้นโยบายผู้ร่วมพัฒนา

    กฎ · ยังไม่ตรวจยืนยันรีวิวแบบไม่มีบริบท: แผน ↔ diff

    • ไม่ใช่การรันที่บันทึกไว้นโยบายกำหนด→ รวบรวมหลักฐาน: พาธ · ตัวอย่างซอร์ส 3 ไฟล์ · annotation · POM (การเปลี่ยนแปลงในการพัฒนา)
  7. เซสชันการทำงานการเปลี่ยนแปลงในการพัฒนา

    การกระทำแก้ Lombok แบบเชิงกำหนดก่อน · ข้าม LLM หากบิลด์ใหม่ผ่าน

    • ส่งต่อบิลด์ใหม่ล้มเหลว→ หากบิลด์ใหม่ล้มเหลว โมเดลซ่อมด้วยหลักฐานและคำสั่งแก้ไข (เอเจนต์ซ่อมของ REODE)
  8. กำลังพัฒนาเอเจนต์ซ่อมของ REODE

    การสังเกต · ข้อค้นพบหากบิลด์ใหม่ล้มเหลว โมเดลซ่อมด้วยหลักฐานและคำสั่งแก้ไข

    • ส่งต่อสัญญาณการตรวจยืนยัน→ scorecard: build · test · เทสต์ที่ถูกลบ · การยกเว้น surefire (ผลงาน)
  9. อาร์ติแฟกต์ผลงาน

    อาร์ติแฟกต์scorecard: build · test · เทสต์ที่ถูกลบ · การยกเว้น surefire

  10. เซสชันการทำงานการเปลี่ยนแปลงในการพัฒนา

    การกระทำความล้มเหลวที่เหลือกลับไปสู่การรวบรวมหลักฐาน

บริบท
เอเจนต์ซ่อมพยายามแก้ข้อผิดพลาด setMsg() not found ราว 40 รายการทีละรายการ โดยไม่ดู @Data หรือเวอร์ชัน Lombok ใน pom.xml อินพุตที่พังอยู่แล้วไม่ได้ถูกแยกออกจากข้อผิดพลาดที่การไมเกรตทำให้เกิด
ผลลัพธ์
scorecard อ่านผล build และ test ร่วมกับจำนวนเทสต์ที่ถูกลบและการยกเว้น surefire และข้ามรายการ coverage เมื่อไม่ทราบ baseline การผ่านด้วยการลบเทสต์ยังคงเป็นความล้มเหลว
ข้อจำกัด
การรวบรวมหลักฐานสุ่มตัวอย่างซอร์สได้สูงสุดสามไฟล์ จึงไม่ใช่ความเข้าใจโค้ดเบสทั้งหมด ไม่มีบันทึกว่า worktree รีวิวอิสระ หรือคิวการผสาน develop ตามนโยบายถูกใช้จริงกับกรณีนี้ และยังไม่ยืนยันเอเจนต์เขียนโค้ดและโมเดลของกรณีนี้ ไม่มีผลเทสต์หรือ coverage สุดท้ายของลูกค้า
แหล่งอ้างอิงและข้อจำกัดที่เหลือ
  • งาน baseline และงานสำรวจก่อนแก้ไขถูกย้ายจากกำลังทำเป็นเสร็จ และมีคอมมิตการพัฒนาอยู่ ไม่ได้ดึงผลการตรวจของ GitHub ใหม่
  • นโยบายของรีโพซิทอรีนี้กำหนดคิวการผสาน feature → develop → main แต่ขั้นตอนเดียวกันไม่ได้ใช้กับโปรเจกต์อื่น
  • เอเจนต์ตรวจยืนยันแบบเลือกเปิดเป็นกลไกในการพัฒนา ไม่ใช่หลักฐานว่าถูกใช้ในทุกการส่งมอบ ไม่ได้รวมตัวเลขเช่นขนาดหรืออัตราส่วนของการส่งมอบ เพราะยืนยันหลักฐานต้นฉบับไม่ได้
  • เมื่อบิลด์ใหม่ล้มเหลว การซ่อมด้วยโมเดลยังคงได้รับข้อผิดพลาดของ build ครั้งแรก ไม่ใช่ข้อผิดพลาดใหม่ของการบิลด์ใหม่