Tại sao dễ bị bỏ qua
Bạn yêu cầu một sửa đổi nhỏ. Agent bắt đầu chạm vào các file trên khắp dự án. Một refactor rộng có thể đúng, nhưng nó xứng đáng được chú ý ở mức độ khác so với một thay đổi một dòng.
Rủi ro dễ bị bỏ qua khi các thao tác file xuất hiện từng cái một. Mỗi chỉnh sửa trông nhỏ khi xem riêng lẻ. Cộng lại, chúng có thể ảnh hưởng đến phần lớn hơn nhiều của dự án so với yêu cầu ban đầu.
ClawMetry phát hiện gì
ClawMetry kiểm tra các đối số công cụ đã ghi lại về phạm vi thay đổi file và các mẫu lệnh nguy hiểm. Một chỉnh sửa rộng có thể kích hoạt cảnh báo file blast radius. Xóa đệ quy nhắm vào vị trí gốc có thể tạo ra phát hiện nghiêm trọng.
Sự khác biệt thay đổi kết quả phát hiện
Ví dụ kích hoạt
30 file ghi riêng biệt
Cảnh báo
So sánh im lặng
4 lần ghi file riêng biệt
Không có kết quả phát hiện cho detector này.
Trong so sánh đã kiểm tra, ghi vào ba mươi file riêng biệt kích hoạt cảnh báo. Ghi vào bốn file thì im lặng. Ngưỡng chỉnh sửa rộng có thể thay đổi theo runtime và đường cơ sở của nó. Phát hiện cung cấp số lượng và bằng chứng có giới hạn để tập trung đánh giá.
Kiểm tra kết quả detector
{
"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"
}
}Tải đầu vào và kết quả đầy đủ (JSON)Cách ví dụ được kiểm tra
Các ví dụ này đánh giá detector đã xuất bản bằng dữ liệu sự kiện được soạn thảo hoặc tệp cấu hình dùng một lần. Video minh họa các hành vi đó. Đây không phải là bản ghi của agent thực hoặc giao diện sản phẩm. Không có lệnh nào trong ví dụ được thực thi.
Kết quả xác lập hành vi cho các đầu vào này. Nó không xác lập việc thu thập runtime, ngăn chặn hay một sự xâm phạm thực sự. Kiểm tra hợp đồng nguồn đã ghim.
Những gì cần kiểm tra tiếp theo
So sánh phạm vi bị ảnh hưởng với yêu cầu. Kiểm tra diff thực tế, đặc biệt là các thay đổi được tạo tự động và các lần xóa. Xác nhận rằng các test bao phủ các file liên quan trước khi chấp nhận kết quả. Mục đích là phát hiện thay đổi rộng bất ngờ trong khi bạn vẫn còn ngữ cảnh.
- So sánh phạm vi với tác vụ
- Xem xét diff thực tế
- Kiểm tra test và các xóa
Tín hiệu này xác lập điều gì
Công cụ này đọc đối số công cụ, không phải syscall hệ thống file. Nó báo cáo sau hành động và không chứng minh mọi thay đổi được đặt tên đã thành công.