Комментарии 9
Все инструменты для ревью, а точнее для того чтобы оно вообще было нахер не нужно - автотесты и "линтеры", встраиваемые в CI, существуют уже хер знает сколько времени. Нигде только (почти что) не видел чтобы их как-то использовали. Начали бы хотя бы с этого прежде чем свою эту жопу-т внедрять. А то ведь заеало уже по сотому разу на ревью выслушивать от какого-нибудь очередного упоротого полуеанутого красноглазого задрота как ему прадедушка перед кончиной завещал правильно именовать переменные и ставить переносы строк.
Шта?
Не припомню ни одного проекта за последние несколько лет, где бы линтер не был включен "на стадии котлована". Причём с одинаковыми настройками как в редакторах у разрабов, так и в пайплайнах.
По юнит-тестам на текущем моём проекте (с 2023) покрытие 96%. На предыдущем (с 2020) было в районе 80.
Линтеры и высокое покрытие автотестами это лишь база, за пределами которой только начинается ревью. И это я ещё в обычной заказной разработке занят.
Поверьте, это на голову выше больших продуктовых проектов) Там в лучшем случае скриншот тестированием все покрвает, а юнит тесты можно сказать по желанию. Если заякнуться про покрытия unit тестами в обязательном порядке (хотя бы 50%+), тебя все хором спросят, а зачем? Метрики это не улучшает, премии не приносит, зато время тратит, да еще и код надо аккуратно писать, а там такие велосипеды, что никто их покрывать уже не хочет
Ну вот с нейросетью будет удобнее, чем с тестами и линтерами.
"Код не подходит для анализа и исправления кода", только если мы жадные. Забавно слушать что мы теряем наставничество, когда есть человек-о-приемлимые формы ИИ, такие как ГПТ и иные, которые могут разъяснить даже как токамак построить в гараже. Неужели нельзя совместить две системы, анализ кода и объяснение анализа. Кто лучше поймет ИИ кроме самого ИИ. Ревью в слепую и вам думаю будет не под силу, если я вам скажу, сделай хорошо и не буду говорить, что я хочу в итоге увидеть. Не понимаю тех, кто утверждает, о том что ИИ станет отдельным от Человека. Мы хотим все и сразу, но забываем, что ИИ просто повторяет за нами, наши же слова, в разной последовательности, имитируя наш образ мысли, но не являясь нами. В общем, ИИ может все, что вы выбрасываете из его возможностей, как исполнитель желаний, но мы должны формулировать эти желания правильно. За ИИ стоит наш прогресс, а за нами прогресс ИИ.
П.С. Спасибо за прочтение и потраченное время.
О да, вы скорее всего пожалеете о потраченном времени, т.к. объяснить ИИ пожелания предельно чётко может оказаться затратнее их самостоятельной реализации. Всё таки ИИ нужна специализация. Прям как с контейнерами, в каждом свой ИИ и глав-ИИ для оркестрации всего этого балагана.
В контексте код-ревью, ИИ будет ревьюить код на уровне компилятора, т.е. тупо какой-то любой код на соответствие гайдлайнам.
А вот если мы хотим архитектурные изыскания, то ревьюить придётся уже не совсем код. На чём сейчас пишут архитекторы? На ватмане?
Мы смогли убедиться
Ну может вы с вашим нейро-соавтором и убедились, а мы нет. Я вижу только очередные переливания из пустого в порожнее. Чятик можно точно так же попросить накидать тезисы против ИИ-ревью. Короче, пятикратно переваренный... - ну вы понимаете.
Мы же не высадку на Юпитер обсуждаем. Задача вполне практическая, придумать эксперимент несложно. Взять несколько групп разных скиллов и в половине внедрить чисто ИИ-ревью, остальным оставить обычное. Через полгода посмотреть на динамику таких показателей как:
среднее время ревью
число FP и TP замечаний
число возвратов задачи в разработку с тестирования
число новых открытых багов
В конце независимой сеньорской группой провести аудит обоих проектов. И вопрос "нужно-не нужно" будет частично закрыт. Заниматься этим, конечно, никто не будет. Проще еще 100 водяных статей из Чятика выдавить.
Чтобы LLM погружался в контекст нужно доставлять ему этот контекст, то есть документировать.
Документировать большой модуль, маленький, класс, метод - краткий документ / комментарий к каждой иерархической единице.
Я писал об этом https://habr.com/ru/articles/855822/
Почему ИИ рано поручать код-ревью