Мой ИИ-агент для написания кода постоянно давал сбои — что я изменил
Шесть недель назад мой ИИ-агент для написания кода выдавал мусор.
Он писал функции, которые компилировались, но ничего не делали. Он проходил тесты по неверным причинам. Он исправлял один баг, но создавал три новых.
Я думал, что проблема в агенте. Я ошибался. Проблема заключалась в моем собственном отсутствии дисциплины.
Я использую ИИ-агента для 40% своей инженерной работы. Он занимается рефакторингом, генерацией тестов и поиском багов. Когда моя кодовая база была запутанной, ИИ делал этот беспорядок в три раза хуже.
ИИ не заменяет дисциплину. Он лишь усиливает то, что у вас уже есть.
Вот как я изменил свой рабочий процесс, чтобы исправить результат:
Тесты должны проверять поведение, а не состояние. Перестаньте писать тесты вроде
assert user is not None. Это ложь. Тест должен проверять конкретные данные, напримерassert user.email == expected_email. Если тест слабый, ИИ воспользуется этим.Читайте каждый diff. Раньше я принимал рефакторинг, не глядя в код. Это приводило к циклическим зависимостям и запутанной архитектуре. Если вы не можете объяснить, почему изменение лучше, отклоняйте его.
Делайте состояние явным. Не позволяйте ИИ «догадываться», как обрабатывать кэш или сессии. Определяйте их в своих промптах или схемах. Неявное состояние приводит к скрытым багам, которые обрушивают продакшн.
Пишите собственные тесты для изменений агента. Каждый раз, когда агент меняет код, я сначала пишу тест сам. Это занимает 15 минут, но экономит часы отладки.
Требуйте «громких» ошибок. Если изменение проходит тесты, но нарушает логику, система должна это фиксировать. Никогда не принимайте «тесты пройдены, выпускаем» как валидную метрику.
Результаты:
- Количество багов в неделю снизилось с 5 до менее чем 1.
- Время на отладку сократилось с 6 часов до 1 часа в неделю.
Агент не изменился. Изменился я.
Если вы используете ИИ-агентов, сначала приведите в порядок кодовую базу. Улучшите тесты, сделайте состояние явным и ужесточите процесс ревью.
Агент — это зеркало. Убедитесь, что вам есть что усиливать.
Источник: https://dev.to/susiloharjo/my-ai-coding-agent-kept-breaking-what-i-changed-4l5f
Опциональное обучающее сообщество: https://t.me/GyaanSetuAi
