Contributing

ขั้นตอนการรีวิว pull request

หน้านี้อธิบายขั้นตอนการรีวิวหลังจากเปิดหรืออัปเดต pull request ของ OpenClaw ได้แก่ Barnacle และ ClawSweeper ทำอะไร วิธีปรับปรุง PR จากข้อเสนอแนะของระบบเหล่านี้ และสิ่งที่ต้องตรวจสอบเมื่อระบบอัตโนมัติยังไม่ตอบสนอง

Barnacle และ ClawSweeper ช่วยให้ผู้ดูแลรักษาคิวการรีวิวยังคงจัดการได้สะดวก แต่ไม่ได้ใช้แทนดุลยพินิจของผู้ดูแลรักษา

Barnacle

Barnacle เป็นระบบคัดแยก GitHub แบบกำหนดผลลัพธ์แน่นอน โดยตรวจหากรณีการจัดการคิวที่ทราบอยู่แล้วและตอบสนองด้วยป้ายกำกับ ความคิดเห็น หรือการปิดรายการ

Barnacle อาจดำเนินการเมื่อ:

  • เนื้อหา PR แทบว่างเปล่าหรือไม่มีบริบทของปัญหา;
  • PR ไม่มีหลักฐานที่เป็นประโยชน์;
  • การเปลี่ยนแปลงเฉพาะเอกสาร เฉพาะการทดสอบ เฉพาะการปรับโครงสร้าง เฉพาะ CI หรือโครงสร้างพื้นฐาน ไม่มีบริบทจากผู้ดูแลรักษาที่เชื่อมโยงไว้;
  • การเปลี่ยนแปลงดูเหมือนควรอยู่ใน ClawHub หรือ Plugin แทนที่จะอยู่ในแกนหลัก;
  • สาขามีงานที่ไม่เกี่ยวข้องรวมอยู่ด้วย;
  • ผู้เขียนมี PR ที่เปิดอยู่มากกว่า 20 รายการ

Barnacle ทำงานจากโค้ดเวิร์กโฟลว์ของรีโพซิทอรีที่เชื่อถือได้ โดยไม่เช็กเอาต์หรือเรียกใช้โค้ดของผู้มีส่วนร่วม

ป้ายกำกับการกำหนดเส้นทางส่วนใหญ่เป็นสัญญาณสำหรับผู้ดูแลรักษาหรือระบบอัตโนมัติ ดังนั้นผู้มีส่วนร่วมจึงไม่จำเป็นต้องเพิ่มป้ายกำกับด้วยตนเอง

ClawSweeper

ClawSweeper เป็นบอตช่วยรีวิวและบำรุงรักษาด้วย AI สำหรับรีโพซิทอรี OpenClaw โดยสามารถรีวิว PR ประเมินหลักฐาน แสดงความคิดเห็นการรีวิวที่คงอยู่ถาวร และช่วยผู้ดูแลรักษาในขั้นตอนการซ่อมแซมหรือผสานอัตโนมัติที่มีมาตรการควบคุม

ผลลัพธ์เชิงบวกจาก ClawSweeper เป็นหลักฐานประกอบ ไม่ใช่การอนุมัติจากผู้ดูแลรักษา ผู้ดูแลรักษายังคงเป็นผู้ตัดสินใจว่า PR พร้อมผสานหรือไม่และเมื่อใด

ClawSweeper ทำงานตามคิว อย่าคาดหวังการตอบสนองทันทีหลังจากเปิด PR พุชคอมมิต หรือเพิ่มคำขอรีวิว การอัปเดตป้ายกำกับหลังจาก ClawSweeper ทำงานอาจใช้เวลาเช่นกัน

PR ใหม่จะเข้าสู่คิวรีวิวของ ClawSweeper ผู้ดูแลรักษายังสามารถจัดคิวขั้นตอนการรีวิว การซ่อมแซม หรือการผสานอัตโนมัติด้วยป้ายกำกับหรือคำสั่งได้ สำหรับการอัปเดตทั่วไปจากผู้มีส่วนร่วม ให้ขอให้ ClawSweeper รีวิวอีกครั้งหลังจากอัปเดตสาขา คำอธิบาย PR หลักฐาน หรือโค้ดแล้วเท่านั้น จากนั้นขอรีวิวใหม่ด้วยความคิดเห็นใหม่ใน PR:

text
@clawsweeper re-review

ผู้เขียน PR สามารถใช้ @clawsweeper re-run ได้เช่นกัน ผู้ใช้ที่มีสิทธิ์เขียนในรีโพซิทอรีสามารถใช้คำสั่งใดคำสั่งหนึ่งกับรายการที่เปิดอยู่ได้ คำสั่ง @clawsweeper review แบบธรรมดาสงวนไว้สำหรับผู้ดูแลรักษาเท่านั้น โปรดรออย่างอดทน การขอซ้ำก่อนดำเนินการเปลี่ยนแปลงที่ร้องขอให้เสร็จจะเพิ่มเพียงสัญญาณรบกวนในคิว

เมื่อ ClawSweeper เปิดการสนทนารีวิว ให้ปฏิบัติเช่นเดียวกับข้อเสนอแนะจากการรีวิวทั่วไปและใช้รายการตรวจสอบติดตามผลด้านล่าง

หากผู้มีส่วนร่วมหรือผู้ดูแลรักษาที่เป็นมนุษย์รับช่วง PR และกำลังดำเนินการอยู่ อย่าเรียก ClawSweeper หรือทำงานใน PR พร้อมกัน ให้มนุษย์รีวิวหรือซ่อมแซมให้เสร็จก่อน หากกิจกรรมหยุดลง ให้ตรวจสอบว่ามีการขอให้ผู้เขียนส่งหลักฐานหรือดำเนินการอัปเดตอื่นหรือไม่

ปรับปรุง PR ระหว่างการรีวิว

เมื่อ Barnacle, ClawSweeper หรือผู้ดูแลรักษาตอบกลับแล้ว ให้ใช้ข้อเสนอแนะนั้นเป็นรายการตรวจสอบขั้นตอนถัดไปสำหรับ PR

  1. อ่าน Rank-up moves: และ Proof guidance: ของ ClawSweeper เป็นรายการสิ่งที่ต้องดำเนินการสำหรับ PR นั้น คะแนนและป้ายกำกับเป็นสัญญาณจากการรีวิว ไม่ใช่เป้าหมายตายตัวสำหรับการผสาน
  2. พุชการเปลี่ยนแปลงโค้ดหรือเอกสารที่ร้องขอ และอัปเดตคำอธิบาย PR เมื่อปัญหา วิธีแก้ไข ผลกระทบต่อผู้ใช้ หรือหลักฐานเปลี่ยนแปลงไป
  3. เพิ่มหลักฐานที่ร้องขอโดยใช้หลักฐานที่สอดคล้องกับการเปลี่ยนแปลง
  4. แก้ไขการสนทนารีวิวที่จัดการแล้วด้วยตนเอง ตอบกลับและเปิดการสนทนาทิ้งไว้เฉพาะเมื่อต้องการดุลยพินิจจากผู้ดูแลรักษาหรือผู้รีวิว
  5. ขอรีวิวอีกครั้งหลังจากสาขา คำอธิบาย PR หลักฐาน และผลลัพธ์ CI ที่เกี่ยวข้องเป็นปัจจุบันแล้วเท่านั้น การอัปเดตและรีวิวหลายรอบระหว่างผู้เขียน ผู้ดูแลรักษา และ ClawSweeper เป็นเรื่องปกติ
  6. สนทนาใน PR ต่อไปเมื่อทำได้ ย้ายไปที่ #clawtributors บน Discord เฉพาะเมื่อ PR ต้องการการประสานงานจากผู้ดูแลรักษา ระบบอัตโนมัติดูเหมือนติดขัด หรือการตัดสินใจขั้นถัดไปตกลงกันได้ยากในความคิดเห็นของ GitHub โดยระบุลิงก์ PR สถานะปัจจุบัน และคำถามที่เจาะจงหรือหลักฐานที่ยังขาดอยู่

รักษาเนื้อหา PR ให้เป็นปัจจุบัน ความคิดเห็นช่วยในการสนทนา แต่คำอธิบาย PR คือบทสรุปถาวรที่ผู้ดูแลรักษาและระบบอัตโนมัติจะกลับมาตรวจสอบ

status: ⏳ waiting on author หมายความว่าการดำเนินการถัดไปอยู่ที่ผู้เขียน PR โดยต้องอัปเดตสาขา คำอธิบาย PR หลักฐาน หรือตอบกลับด้วยบริบทที่ขาดหายไปก่อนขอรีวิวอีกครั้ง

หลักฐานที่เป็นประโยชน์ประกอบด้วยผลลัพธ์การทดสอบที่เจาะจง ผลลัพธ์ CI ภาพหน้าจอ การบันทึกหน้าจอ เอาต์พุตเทอร์มินัล ข้อสังเกตจากระบบจริง บันทึกที่ปกปิดข้อมูลแล้ว หรือลิงก์อาร์ติแฟกต์ สำหรับการเปลี่ยนแปลงด้านภาพ ให้แนบภาพหน้าจอก่อนและหลังเมื่อทำได้ สำหรับไฟล์หลักฐาน ควรใช้ลิงก์ไปยังอาร์ติแฟกต์ CI ภาพหน้าจอหรือการบันทึกหน้าจอที่อัปโหลดไปยัง GitHub หรือข้อความตัดตอนสั้นๆ จากบันทึกที่ปกปิดข้อมูลแล้ว อย่าคอมมิตไฟล์หลักฐานที่สร้างขึ้น เว้นแต่ไฟล์เหล่านั้นเป็นส่วนหนึ่งของเอกสาร การทดสอบ หรือการเปลี่ยนแปลงผลิตภัณฑ์จริง

ผู้มีส่วนร่วมมีหน้าที่ปกปิดข้อมูลละเอียดอ่อน ลบข้อมูลลับ โทเค็น URL ส่วนตัว ข้อมูลผู้ใช้ และบันทึกที่ไม่เกี่ยวข้องก่อนเผยแพร่หลักฐาน

OpenClaw ยังใช้ระบบอัตโนมัติแยกต่างหากสำหรับรายการที่ไม่มีความเคลื่อนไหว ปัญหาและ PR ที่ยังไม่ได้มอบหมายอาจถูกทำเครื่องหมายว่าไม่มีความเคลื่อนไหวหลังจากไม่มีการดำเนินการเป็นเวลา 14 วัน แล้วปิดหลังจากไม่มีการดำเนินการต่ออีก 7 วัน PR ที่มอบหมายแล้วจะถูกทำเครื่องหมายว่าไม่มีความเคลื่อนไหวเมื่อครบ 27 วันหลังจากเปิด โดยไม่คำนึงถึงการอัปเดตภายหลัง แล้วปิดหลังจากอยู่ในสถานะไม่มีความเคลื่อนไหวเป็นเวลา 7 วันโดยไม่มีกิจกรรม หาก PR ที่มอบหมายแล้วยังคงดำเนินการอยู่ ให้ประสานงานกับผู้ดูแลรักษาที่กำลังทำงานในรายการนั้น

เมื่อระบบอัตโนมัติยังไม่ตอบสนอง

ระบบอัตโนมัติอาจไม่ตอบสนองเมื่อผู้ดูแลรักษากำลังจัดการรายการนั้นอยู่ คำขอรีวิวหรือซ่อมแซมยังอยู่ในคิว เหตุการณ์เป็นเรื่องปกติ หรือช่องทาง ClawSweeper ไม่ได้กำหนดค่าไว้สำหรับการดำเนินการที่ร้องขอ

ระบบอาจหลีกเลี่ยงการดำเนินการเมื่อเวิร์กโฟลว์ที่เชื่อถือได้จำเป็นต้องเรียกใช้โค้ดของผู้มีส่วนร่วมที่ไม่น่าเชื่อถือ ในกรณีนั้น ผู้ดูแลรักษาจะใช้การรีวิวตามปกติหรือเวิร์กโฟลว์ที่ปลอดภัยกว่าแทน

การแก้ไขปัญหา

หาก ClawSweeper ไม่ตอบสนองทันที ให้รอก่อนลองใหม่ บริการนี้ทำงานตามคิว และการแสดงความคิดเห็นหรือเปลี่ยนป้ายกำกับซ้ำๆ อาจทำให้เธรดตรวจสอบได้ยากขึ้นโดยไม่ได้ทำให้คิวเร็วขึ้น

ก่อนขอความช่วยเหลือ ให้ตรวจสอบว่า:

  • คำอธิบาย PR เป็นปัจจุบัน;
  • คอมมิตล่าสุดมีการเปลี่ยนแปลงที่ร้องขอ;
  • CI ทำงานเสร็จแล้ว หรือเนื้อหา PR อธิบายว่าเหตุใดความล้มเหลวที่ยังเหลืออยู่จึงไม่เกี่ยวข้องกับ PR;
  • คำขอรีวิวล่าสุดส่งเป็นความคิดเห็นใน PR: @clawsweeper re-review;
  • ไม่มีผู้ดูแลรักษาหรือผู้มีส่วนร่วมกำลังทำงานใน PR อยู่แล้ว;
  • คำขอล่าสุดไม่ได้ยังอยู่ภายในระยะเวลาหน่วงตามปกติของคิว ClawSweeper

หากยังไม่มีการตอบสนองจาก ClawSweeper หลังจาก PR เป็นปัจจุบันแล้วหลายชั่วโมง หรือหาก PR ดูเหมือนติดขัดจากระบบอัตโนมัติ ให้สอบถามใน #clawtributors บน Discord โดยระบุลิงก์ PR สิ่งที่คาดหวัง เวลาที่ส่งคำขอ และสิ่งที่เปลี่ยนแปลงนับจากความคิดเห็นล่าสุดของบอต

การฟอร์กระบบอัตโนมัติ

โครงการที่ต้องการระบบอัตโนมัติสำหรับการรีวิวในลักษณะคล้ายกันสามารถศึกษาและฟอร์ก ClawSweeper ได้:

ที่เกี่ยวข้อง

Was this useful?
On this page

On this page