«Код написал AI» — новая версия фразы «это не моя ошибка»
Мне кажется, мы постепенно создаём новую зону размытой ответственности.
Разработчик формулирует задачу. Coding agent изучает репозиторий, меняет несколько компонентов, добавляет библиотеку, пишет тесты и создаёт pull request.
После этого человек просматривает большой diff и нажимает Approve.
Формально reviewer есть.
Но означает ли это, что у изменения появился настоящий владелец?
В vibe coding есть опасная психологическая ловушка: чем проще было получить результат, тем меньше времени хочется тратить на его глубокую проверку.
Особенно когда:
сборка проходит;
тесты зелёные;
AI написал убедительное описание;
второй AI-reviewer не нашёл критичных замечаний.
Но один агент мог написать код, создать тесты и затем фактически проверить собственную работу.
Это не независимый контроль. Это автоматизированное подтверждение собственной гипотезы.
OWASP отдельно указывает, что у каждого AI-generated change должен быть человеческий владелец, который отвечает за корректность, безопасность и сопровождение. AI-review не должен заменять человеческое решение. (cheatsheetseries.owasp.org)
На мой взгляд, компаниям не следует вводить единую политику «AI разрешён» или «AI запрещён».
Нужна матрица автономности.
Опечатка в документации — один уровень риска.
Новая продуктовая функция — другой.
Изменение dependency, механизма авторизации, CI/CD или production-инфраструктуры — принципиально другой.
Для каждого уровня должны различаться: - доступные агенту инструменты; - права на файловую систему и сеть; - возможность выполнять команды; - требования к review; - необходимость участия CODEOWNER или security; - допустимость автоматического merge; - требования к audit trail.
Отдельный вопрос — масштаб pull request.
Review теряет смысл, когда reviewer физически не способен построить ментальную модель изменения.
Можно честно посмотреть 40 строк новой логики.
Значительно сложнее осознанно принять во владение 4 000 строк, сгенерированных за несколько минут.
Поэтому ограничение размера AI-generated change может оказаться более полезным контролем, чем ещё один scanner.
Моя позиция проста:
AI может быть автором текста кода, но не владельцем инженерного решения.
Approve должно означать: «Я понимаю, как это работает, какие риски создаёт и что нашей команде придётся сопровождать».
А не: «Diff выглядит убедительно, и все проверки зелёные». Какой объём AI-generated кода вы готовы одобрить под своим именем и затем поддерживать на on-call?
· 27.07
С тезисом согласен: проблема не в том, что AI пишет код, а в том, что ownership размазывается между человеком и агентом. В проде это обычно лечится traceability, review gate и ясным rollback. Вы уже пробовали отдельный чек-лист для agent-generated изменений?
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён