Продуктовая компания, команда из 14 разработчиков. Пул-реквесты ждали ревью днями, релизы сдвигались, а код по требованиям безопасности не мог покидать контур. Ниже история: как машина забрала первый проход ревью и что стало с релизным циклом.
Клиент под NDA: имя не разглашаем, потому что связаны договором о неразглашении, для наших контрактов это обычное условие. Отрасль, задача, ход работ и цифры настоящие.
Очередь на ревью росла быстрее, чем разбиралась. Сеньоры между своими задачами и чужим кодом выбирали свои, и пул-реквест мог провисеть три дня. К моменту ревью автор уже забывал контекст и переключался обратно с трудом.
Тесты писались по остаточному принципу, документация отставала на месяцы. Все понимали, что так нельзя, и никто не мог остановиться и починить: релизный план не ждал. С этого обычно и начинается разговор про ИИ в разработке приложений.
Сняли правила с живого кода: стайлгайд, договорённости, типовые замечания из истории ревью. Никаких общих рекомендаций из интернета.
Машина проходит по пул-реквесту первой: стиль, очевидные ошибки, дырки в тестах. Живой ревьюер получает код причёсанным и смотрит архитектуру.
Покрытие пишется вместе с кодом, документация собирается из изменений. Начали с legacy-модулей: там эффект виден быстрее всего.
Модель развёрнута в периметре компании. Наружу не уходит ни строки, и это проверяла служба безопасности, а не мы на словах.
«Сеньоры сначала смотрели на машинное ревью со скепсисом: ну что оно понимает. Через месяц они же запретили мержить без него. Скучную половину замечаний больше не надо писать руками, и это оказалось лучшим аргументом.»
Первый проход ревью занимает минуты. У сеньоров высвободилось 40 % времени, релизный цикл ужался с месяца до двух недель, и код так и не покинул контур: обещание оказалось проверяемым.
Услуга по теме: направление 03 «ИИ для разработки» · все кейсы студии
Ассистент читает изменения в пул-реквесте и пишет замечания туда же, где их читают люди. Никакого отдельного интерфейса.
Ассистент ревью имеет смысл от десяти разработчиков и десятка пул-реквестов в неделю. В меньшей команде сеньор успевает смотреть всё сам, и машина только раздражает.
Отдельный случай, ради которого к нам чаще всего и приходят: код нельзя выпускать наружу. Тогда выбор моделей сужается, качество будет ниже облачного, а сроки длиннее. Это честный размен, и решать его надо до начала проекта, а не после.
В разработке любые цифры про скорость спорны: задачи разные, недели неравные. Ниже что мы считали и чего это не доказывает.
Время первого прохода ревью взяли из журнала системы контроля версий: от создания пул-реквеста до первого содержательного комментария. Медиана за квартал до и квартал после, по всем реквестам без отбора.
Сорок процентов времени сеньоров это не хронометраж, а разница в количестве реквестов, где сеньор был первым ревьюером. Раньше он смотрел все, теперь только те, где машина нашла спорное или где менялась архитектура.
Релизный цикл сократился с месяца до двух недель, но честно: параллельно команда перешла на другой график планирования. Мы не приписываем это изменение целиком ассистенту и говорим об этом заказчикам.
Разработчики самая требовательная аудитория для ИИ-инструментов, и пилот с ними это всегда переговоры. Три вещи, которые мы перестроили по их замечаниям.
Первый проход выдавал десятки замечаний на реквест, половина про форматирование, и польза тонула в шуме. Убрали всё, что закрывает линтер. Теперь у каждого нашего ассистента ревью есть список того, что он не комментирует.
Компания годами писала свои обёртки, и ассистент предлагал заменить их публичными аналогами. Добавили в контур описание внутренних библиотек и правила, где чем пользоваться. Это входит в диагностику: собираем такой список до запуска.
Код не мог покидать периметр, а модель, которая нравилась по качеству, требовала внешнего API. Взяли ту, что работает на своих серверах, и честно обсудили разницу в качестве с заказчиком. Правило: выбор модели начинается с ограничений, а не с рейтингов.
Внутри контура всё дольше: нельзя просто взять облачный сервис и подключить.
Шестая неделя оказалась самой важной. Без неё ассистент остался бы генератором шума, который команда отключила бы через месяц.
Покажите репозиторий и процесс ревью, скажем, что машина заберёт уже в первый месяц.