Ответ вслух Middle Код-ревью и правила команды обновлено

Как ревьюить код, написанный с ИИ

Вопрос

Как вы ревьюите пулреквест, если знаете, что большая часть кода сгенерирована?

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Образцовый ответ: «Начинаю не с кода, а с задачи: что должно было измениться. Потом смотрю, нет ли в диффе лишнего.

Что должно прозвучать в ответе

  • Начинаю с задачи: что должно измениться, и сверяю с диффом

  • Не доверяю гладкому виду, читаю логику и края

  • Проверяю вызовы API на существование в нашей версии

  • Ищу дубли существующего кода и лишние правки

  • Смотрю тесты: падают ли они на сломанном коде

  • Задаю автору вопросы «почему так», а не только правлю

Что могут спросить следом

  • Что сделаете, если автор не может объяснить часть кода?

Разбор

Образцовый ответ: «Начинаю не с кода, а с задачи: что должно было измениться. Потом смотрю, нет ли в диффе лишнего. Гладкому виду не доверяю: аккуратные имена и комментарии ничего не говорят о правильности. Читаю логику и проверяю края: пустые значения, ошибки, конкурентный доступ. Незнакомые методы библиотек сверяю с документацией нашей версии, ассистенты любят несуществующие API. Ищу дубли, потому что ассистент часто пишет свой хелпер вместо нашего. Тесты читаю внимательно, ищу тавтологии и моки логики. Если автор не может объяснить кусок кода, пулреквест не одобряю, пока не разберёмся вместе».

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.