เหตุใดจึงมองข้ามได้ง่าย
คุณขอแก้ไขเล็กน้อย แต่ agent เริ่มแตะไฟล์ทั่วโปรเจกต์ การ refactor ในวงกว้างอาจถูกต้อง แต่ควรได้รับความใส่ใจในระดับที่ต่างจากการแก้โค้ดหนึ่งบรรทัด
ความเสี่ยงมองข้ามได้ง่ายเมื่อการดำเนินการกับไฟล์เกิดทีละครั้ง การแก้ไขแต่ละครั้งดูเล็กน้อยเมื่อมองแยกกัน แต่รวมกันแล้วอาจกระทบส่วนที่ใหญ่กว่าที่งานต้นฉบับระบุไว้มาก
สิ่งที่ ClawMetry ตรวจจับ
ClawMetry ตรวจสอบ argument ของ tool ที่บันทึกไว้เพื่อประเมินขอบเขตการเปลี่ยนแปลงไฟล์และรูปแบบคำสั่งที่อาจทำลายข้อมูล การแก้ไขในวงกว้างอาจสร้าง file blast radius warning การลบแบบ recursive ที่มุ่งเป้าไปยัง root location อาจสร้าง critical finding
ความแตกต่างที่เปลี่ยนผลการตรวจสอบ
ตัวอย่างที่ทริกเกอร์
เขียนไฟล์ 30 ไฟล์ที่แตกต่าง
ผลการตรวจสอบระดับเตือน
การเปรียบเทียบที่เงียบ
เขียน 4 ไฟล์ที่แตกต่างกัน
ไม่มีผลการตรวจสอบสำหรับตัวตรวจจับนี้
ในการเปรียบเทียบที่ตรวจสอบแล้ว การเขียนไปยัง 30 ไฟล์ที่แตกต่างกันจะสร้าง warning การเขียน 4 ไฟล์ยังคงเงียบ ขีดจำกัดการแก้ไขในวงกว้างอาจแตกต่างตาม runtime และ baseline ผลการตรวจพบให้จำนวนและหลักฐานที่จำกัดเพื่อมุ่งเน้นการตรวจสอบ
ตรวจสอบผลลัพธ์ของตัวตรวจจับ
{
"kind": "file_blast_radius",
"severity": "warning",
"evidence": {
"distinct_files": 30,
"write_calls": 30,
"threshold": 25,
"threshold_source": "static",
"baseline": null,
"outside_workspace": 0,
"destructive": [],
"samples": [
"example/f0.py",
"example/f1.py",
"example/f2.py"
],
"observed": "tool_arguments"
}
}ดาวน์โหลดข้อมูลนำเข้าและผลลัพธ์ทั้งหมด (JSON)วิธีการตรวจสอบตัวอย่าง
ตัวอย่างเหล่านี้ประเมินตัวตรวจจับที่เผยแพร่ด้วยข้อมูลเหตุการณ์ที่สร้างขึ้นหรือไฟล์คอนฟิกที่ใช้แล้วทิ้ง วิดีโออธิบายพฤติกรรมเหล่านั้น ไม่ใช่การบันทึก agent จริงหรืออินเทอร์เฟซผลิตภัณฑ์ ไม่มีคำสั่งใดในตัวอย่างถูกเรียกใช้จริง
ผลลัพธ์พิสูจน์พฤติกรรมสำหรับข้อมูลนำเข้าเหล่านี้เท่านั้น ไม่ได้พิสูจน์การรับข้อมูล runtime การป้องกัน หรือการโจมตีจริง ตรวจสอบสัญญาต้นฉบับที่ปักหมุดไว้.
สิ่งที่ควรตรวจสอบต่อไป
เปรียบเทียบขอบเขตที่ได้รับผลกระทบกับคำขอ ตรวจสอบ diff จริง โดยเฉพาะการเปลี่ยนแปลงที่สร้างขึ้นและการลบ ยืนยันว่า test ครอบคลุมไฟล์ที่เกี่ยวข้องก่อนยอมรับผลลัพธ์ จุดประสงค์คือเพื่อตรวจจับการเปลี่ยนแปลงในวงกว้างที่ไม่คาดคิดขณะที่คุณยังมีบริบทอยู่
- เปรียบเทียบขอบเขตกับงาน
- ตรวจสอบ diff จริง
- ตรวจสอบการทดสอบและการลบ
สิ่งที่สัญญาณนี้พิสูจน์
ตัวนี้อ่าน argument ของ tool ไม่ใช่ filesystem syscall รายงานหลังการดำเนินการและไม่พิสูจน์ว่าการเปลี่ยนแปลงที่ระบุทุกอย่างสำเร็จ