Искусственный интеллект и велосипеды 🚲

Решила проверить: много ли велосипедов рождается в процессе AI Solo Development. Отправила агента на поиск по кодовой базе (размер кодовой базы 155K строк не включая миграций).
Нашлось несколько штук разного калибра: ручные Equals/GetHashCode вместо record, new HttpClient() в обход фабрики, кастомные кеши на ConcurrentDictionary вместо IMemoryCache.
Поднимите руку, кто ловил за таким джуна (или ловили вас самих) 😄
Для размера проекта это не катастрофа. Интереснее, как это просочилось. Агент закрыл задачу, решение выглядело рабочим, коммит улетел. Пропустили и периодические аудиты, и ревью. Или ревью было пропущено, это случалось в феврале-марте. Поймал только узконаправленный поиск по велосипедам.
Классическая иллюстрация, почему Code Review обязателен. Когда агент на первой космической скорости выдаёт код, без ревью такое будет проскакивать. У меня процесс включал регулярные ревью и аудиты. Интересно, сколько бы велосипедов накопилось на чисто вайб-кодерском проекте.
А ты уже делаешь аудиты кодовой базы когда фигачишь с агентом?