Почему я отклоняю код, сгенерированный ИИ, даже если он работает
Разработчик делится опытом: несмотря на работоспособность, AI‑генерированный код часто отклоняется из‑за сложности, избыточных изменений и отсутствия понимания решения.
Разработчик, активно использующий код‑агенты, признался, что почти всегда отклоняет их изменения, даже когда они проходят тесты и делают CI зелёным. Такое поведение объясняется тем, что автоматический код часто оказывается сложнее задачи и трудно объясним для человека.
Почему автоматический дифф вызывает отторжение?
- Если автор не может сформулировать подход своими словами, он считает решение ненадёжным{br}— отсутствие внутренней модели приводит к чувству потери контроля.{br}- Дифф, превышающий объём/сложность задачи, воспринимается как «over‑engineering».{br}- Внедрённые абстракции появляются без доказательства их необходимости, что усложняет дальнейшее развитие.
Как меняется процесс разработки с AI‑агентами?
Сначала разработчик тратил дни на изучение кодовой базы, поиск вариантов и эксперименты. После появления AI‑агентов время на написание кода сократилось, но этап ревью стал узким местом. Даже при соблюдении «плана», разбиения задачи на фазы и небольших коммитов, объём генерируемых изменений остаётся высоким, вызывая когнитивную перегрузку.
Что делает плохой AI‑код, несмотря на прохождение CI?
- Работает локально, но ухудшает читаемость и поддерживаемость системы.{br}* Добавляет лишние слои абстракций, не обоснованные текущими требованиями.{br}* Не соответствует архитектурным принципам проекта, что усложняет масштабирование.
Какой подход помогает снизить риск?
Автор советует обязательный человеческий обзор в паре с AI‑ревью. При этом важно:
- Сначала сформировать собственное понимание задачи, а затем направлять агента.{br}2. Оценивать каждый изменённый файл: нужен ли он действительно?{br}3. Проверять, что добавленные абстракции имеют явные причины.
Что это значит для бизнеса?
Если команда полагается только на AI‑генерацию, риск выпуска трудно поддерживаемого кода растёт. Пример из статьи: даже при 100 % прохождении CI, отклонённые изменения могли бы увеличить время поддержки на 30 % из‑за скрытой сложности. Инвестируя в строгий человеко‑AI контроль, компании сохраняют чистоту архитектуры и снижают будущие затраты на рефакторинг.