- Bugbot в Cursor удвоил количество реально исправленных багов благодаря новому подходу к анализу pull request’ов.
- Ключевая метрика resolution rate, показывающая долю исправленных багов, выросла с 52% до более 70% за 40 экспериментов.
- Переход на агентную архитектуру позволил динамически управлять процессом нахождения ошибок, а Bugbot обрабатывает свыше 2 млн PR в месяц.
В компании Cursor было проведено детальное исследование и эволюция агента Bugbot — инструмента для автоматизированного код-ревью pull request’ов, который обнаруживает логические ошибки, проблемы с производительностью и уязвимости до момента слияния кода. Изначально качество работы Bugbot оценивалось вручную, с постепенным внедрением различных техник, включая несколько параллельных прогонов диффов и систему голосования для определения реальных багов.
К моменту релиза инструмент включал комплексный пайплайн: восемь параллельных запусков, агрегацию схожих находок, нормализацию формулировок, фильтрацию по категориям, отдельную модель-валидатор и дедупликацию результатов. Несмотря на это, оставался вопрос о том, улучшается ли Bugbot со временем.
Именно введение метрики resolution rate — доли багов, которые действительно исправляются авторами пулл-реквестов перед мерджем — позволило объективно оценивать эффективность инструмента. Эта метрика рассчитывается с помощью большой языковой модели (LLM) постфактум и была подтверждена сопоставлением с оценками инженеров. С её внедрением оптимизация Bugbot стала строиться на реальных данных из продакшена и офлайн-бенчмарка BugBench.
За 40 крупных экспериментов resolution rate повысился с 52% до более 70%, среднее количество найденных багов в одном PR выросло с 0,4 до 0,7, а реально исправленных с 0,2 до 0,5. Существенный прогресс достигнут благодаря переходу к полностью агентной архитектуре: теперь Bugbot самостоятельно выбирает направления для углублённого анализа, вызывает необходимые инструменты и динамически подбирает контекст, что оказалось более эффективным по сравнению с фиксированным пайплайном. При этом возникла новая проблема — излишняя осторожность в работе агента, которую исправили с помощью более «агрессивных» промптов.
В настоящее время Bugbot обрабатывает свыше 2 миллионов pull request’ов в месяц, включая всю внутреннюю разработку Cursor. Дальнейшие планы развития включают интеграцию функции Autofix для автоматического исправления багов, запуск кода для валидации собственных находок и режим постоянного сканирования репозитория.
