Ask HN: Проверяет ли ваш код по-прежнему человек?

Ask HN: Does a human still review your code?

Ask HN: Проверяет ли ваш код по-прежнему человек?

Большая часть кода, над которым я работаю, предназначена для внутреннего использования в небольшой компании и для личных проектов. После болезненного опыта с ревью кода, где код переписывался несколько раз по причинам, которые часто казались произвольными, чтобы соответствовать чьему-то представлению о лучших практиках, я теперь в команде, где ревью кода в значительной степени автоматизировано. Я считаю, что Claude /review и /code-review бесценны и проводят более тщательное ревью, чем любой человек. Для тех, кто использует ИИ для написания большей части кода, есть ли у вас по-прежнему человек в цикле, который делает больше, чем выборочные проверки?

Личные/побочные проекты: почти полностью автоматизированный процесс ревью PR. Локальные агенты проверяют перед PR, Github Actions запускает Codex/Claude для ревью PR; если все проходит (Unit, e2e, lint и т.д.), то я мёржу. Я просматриваю критически важные пути кода, если они затрагиваются, но это не так часто. На дневной работе: похоже, но больше человеческого участия, и мы всё еще выясняем, что требует человеческого ревью, а что достаточно для агентского ревью. Ревью LLM показали мне/нам, что они поймают больше вещей (и законных, и глупых, справедливости ради), чем люди. Люди-ревьюеры очень плохо видят то, чего _нет_. Да, люди поймают некоторые вещи, которые LLM не поймает, но обычно это только очень специфические вещи, которые мы сделали, и на которых LLM не 'обучен'. Я думаю, что со временем ревью кода будет почти полностью автоматизировано, и люди будут больше сосредоточены на планах перед созданием, обзорах того, что было построено, и других 'артефактах' типа спецификаций/диаграмм, чем на просмотре фактического кода.
Не конкретное ревью кода - Claude ловит больше, чем люди. Но в случаях, когда контекст находится в головах людей, ИИ трудно понять, что происходит и какова основная цель этого изменения кода. Если контекст предоставлен (или задокументирован где-то, к чему Claude имеет доступ) + контекст компании не слишком велик, чтобы его потребить, то, по моему мнению, нет смысла в человеческом ревью.
И то, и другое. ИИ-ревью кода встроено, но всегда есть второй человек в цикле. Я обеспокоен тем, что есть люди, продвигающие фронт генерации кода, фронт ревью кода и фронт лени. В конце концов они встретятся в середине, и будет значительное число инженеров, которые используют ИИ для написания и ревью кода, штампуют его и отправляют в прод, с катастрофическими последствиями.
У нас нет ревью кода. Я пытался сделать это регулярной частью своего рабочего процесса, но это не прижилось. Тем не менее, я вышедший на пенсию разработчик, и все, что я строю, это личные проекты, так что ставки ниже, чем у работающих разработчиков. Я вышел на пенсию за год или два до появления ИИ-агентов кодирования, так что никогда не испытывал эти инструменты в реальной рабочей среде. Работа, должно быть, сейчас совсем другая атмосфера.
Интересно, как кодовые базы для важных продуктов (не демо или короткоживущих) оказываются без ревью кода. Некоторые утверждают, что инженеры должны стать больше 'архитекторами' и 'дизайнерами', но не кодировщиками/ревьюерами. Хотелось бы услышать истории людей, достаточно ли документации и ревью только на высоком уровне, чтобы проект не стал провалом.
Если чьи-то лучшие практики, оптимизация или проверка безопасности настолько важны, автоматизируйте это. Автоматизация более масштабируема и последовательна. Было бы более разумно создавать специализированных агентов для поиска любых важных паттернов. Да, люди нужны для проверки и проектирования агентов и правил. В сочетании с хорошо спроектированной системой сборки и тестирования, человеческое ревью кода, по моему мнению, устарело.