Как это остаётся незамеченным
Вы попросили о небольшом исправлении. Агент начинает затрагивать файлы по всему проекту. Масштабный рефакторинг может быть оправдан, но он заслуживает иного уровня внимания, чем однострочное изменение.
Риск легко упустить, когда файловые операции появляются одна за другой. Каждое изменение выглядит небольшим в отдельности. Вместе они могут затронуть гораздо большую часть проекта, чем предполагала исходная задача.
Что обнаруживает ClawMetry
ClawMetry анализирует аргументы инструментов на предмет охвата изменений файлов и деструктивных паттернов команд. Широкое редактирование может вызвать предупреждение о радиусе поражения файлов. Распознанное рекурсивное удаление, нацеленное на корневое расположение, может вызвать критическую находку.
Различие, меняющее результат
Пример срабатывания
30 изменённых файлов
Предупреждение
Тихое сравнение
4 изменённых файла
Для этого детектора нет находки.
В проверяемом сравнении запись в тридцать различных файлов вызывает предупреждение. Запись в четыре файла остаётся незамеченной. Порог широкого редактирования может варьироваться в зависимости от среды выполнения и её базовых показателей. Находка предоставляет счётчик и ограниченные доказательства для фокусировки проверки.
Изучить результат детектора
{
"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)Как проверялся пример
Эти примеры оценивают опубликованный детектор с авторскими данными событий или одноразовыми файлами конфигурации. Видео иллюстрируют это поведение. Они не являются записями живых агентов или интерфейса продукта. Ни одна команда в примерах не была выполнена.
Результат устанавливает поведение для этих входных данных. Он не устанавливает приём в реальном времени, предотвращение или реальную компрометацию. Изучить закреплённый исходный контракт.
Что проверить дальше
Сравните затронутую область с запросом. Изучите реальный diff, особенно сгенерированные изменения и удаления. Убедитесь, что тесты охватывают задействованные файлы, прежде чем принять результат. Цель в том, чтобы заметить неожиданно широкое изменение, пока у вас ещё есть контекст.
- Сопоставьте охват с задачей
- Проверьте фактический diff
- Проверьте тесты и удаления
Что устанавливает этот сигнал
Читаются аргументы инструментов, а не системные вызовы файловой системы. Отчёт формируется после действия и не подтверждает успешность каждого изменения.