Тесты зелёные, а мержить нельзя. Новый бенчмарк вскрыл проблему
Мы привыкли оценивать код, сгенерированный ИИ-агентами, по принципу «прошел/не прошел тесты». Новый бенчмарк SWE-Gate от исследователей из нескольких университетов показывает, что в реальной разработке «работает» и «готов к мержу» это очень разные вещи.
Из 644 исправлений от четырех LLM, которые успешно проходили функциональные тесты, 221 (34.3%) нарушали требования, которые обычно выявляет code review. Код технически работал, но содержал ошибки в семантике сообщений или неправильные типы данных, имел проблемы с очисткой ресурсов или не соответствовал архитектурным паттернам проекта. Все то, что не проверяется автотестами, но мгновенно цепляет глаз ревьюера.
Модели решают задачу «исправить баг», но задача разработки шире: создать поддерживаемый, консистентный код, который вписывается в контекст проекта.
Авторы SWE-Gate предлагают явно кодифицировать «правила игры» для агентов. Если мы хотим, чтобы они генерировали код, готовый к ревью, эти требования нужно превратить в исполняемые проверки после функциональных тестов.
AI в разработке
Post #102
78