Генерація коду за допомогою ШІ викликає затори у перевірці коду, оскільки інженери мають труднощі

iconTechFlow
Поділитися
AI summary iconКороткий зміст
Новини про ШІ та криптовалюту свідчать про зростання вузьких місць у перевірці коду, оскільки інженери стикаються зі стрімким зростанням коду, згенерованого ШІ. Такі великі компанії, як Uber та Cloudflare, розробляють внутрішні інструменти для управління потоком. Новини про rug pull залишаються не пов’язаними, але зміни у перевірці коду перебувають на етапі тестування. Ще не існує стандартного рішення, а методи тестування відстають від темпів впровадження ШІ.

Автор: The Pragmatic Engineer

Переклад: Deep潮 TechFlow

Огляд Shenchao: Штучний інтелект все швидше пише код, але перевіряє його все ще людина. Цей протиріччя перетворюється на кризу: інженери затоплені PR, згенерованими ШІ, — або втомлюються від непильного огляду, або просто натискають «схвалити», бо ШІ не виявив помилок. Великі компанії створюють власні інструменти для вирішення цієї проблеми, але поки що ніхто не має стандартного рішення.

Привіт, я Гергелі, це безкоштовний додаток до Pragmatic Engineer Newsletter. У кожному випуску я розповідаю про великі технологічні компанії та стартапи з точки зору досвідчених інженерів та керівників інженерних команд. Сьогодні ми розглядаємо одну з чотирьох тем, опублікованих у минулому випуску The Pulse. Повні підписники отримали цю статтю тиждень тому. Якщо це лист було переслано вам, ви можете підписатися тут.

Я чую, що однією з найважливіших проблем для лідерів інженерних команд є управління постійним зростанням навантаження на код-рев’ю. Ця тема існує вже певний час, і зараз такі дискусії здаються все частішими.

Для мене це почалося у січні цього року, коли Opus 4.5 і GPT 5.4 почали писати більше та кращого коду в більшості компаній. Приблизно з того часу директорський рівень почав обговорювати, що обмеження в розробці програмного забезпечення переходять з етапу кодування на етап перевірки.

Вибух інструментів для перевірки коду з використанням ШІ

З лютого спостерігається вибуховий ріст інструментів AI-ревізії коду для впорання зі зростанням навантаження: експерименти та впровадження спеціалізованих інструментів AI-ревізії коду, таких як CodeRabbit, Greptile, Qodo, SonarQube (зараз також Gitar), зросли експоненційно. Також з’явилися інструменти, що надаються самими інструментами для кодування, наприклад, Claude Code review, Cursor review, GitHub Copilot review. Крім того, інструменти, які раніше не брали участь у ревізії коду, але мали контекст щодо кодової бази, також приєднуються до цієї сфери — наприклад, Seer AI reviews від Sentry та Linear code reviews.

Великі компанії створюють власні внутрішні інструменти: Code Inbox від Uber

Великі компанії розробляють власні інструменти для покращення досвіду перевірки коду. Прикладом є Code Inbox від Uber:

Розподіл за розумом — це функція у Code Inbox, призначена для прискорення процесу перевірки:

Рисунок: Налаштування розподілу Code Inbox (Smart assignment) для прискорення процесу перевірки. Джерело: The Pragmatic Engineer

Також є функція профілю ризиків для оцінки впливу змін і залучення розробників до особливої уваги до високоризикованих змін:

Рисунок: Функція профілів ризиків Code Inbox, яка оцінює ризики змін у коді та підказує, на чому зосередитися. Джерело: The Pragmatic Engineer

Ми раніше писали про те, як Uber використовує ШІ для розробки програмного забезпечення, і це не тільки Uber: Cloudflare (AI Code Reviewer), Faire (Fairey), HubSpot (Sidekick) та багато інших компаній створили інструменти, щоб зробити свої процеси код-рев’ю більш ефективними, оскільки виявили, що внутрішня реалізація працює краще, ніж інтеграція рішень від постачальників.

Від «ревізії» до «верифікації»

Інший підхід — це подумати про те, як перевірити код, а не ревізувати його. Сказати легко, зробити складно; теоретично, повна тестування повинно здати код, що працює так, як очікується. Але скільки тестів вважається «повним»? Про які типи тестів ми говоримо? Чи включаються інтеграційні та енд-ту-енд тести? А фаззинг? А формальні методи? Як перевірити, що нові тести правильно охоплюють функціональність? Як ми пов’язуємо все це зі спостережуваністю?

Надмірна цензура заважає інженерам

Занадто детальний огляд коду виснажує інженерів і призводить до зниження якості огляду. Я чу багато чуток, що розробники, бачачи, що інші більше не здатні уважно перевіряти код, просто схвалюють його, якщо AI-огляд не містить суттєвих зауважень. Тим часом ті розробники, які продовжують вкладати таку ж кількість зусиль і часу в огляд коду, як раніше, відчувають, що їх затоплено PR-запитами з AI-сміттям.

Проблема існує, рішення все ще експериментальне

Проблема існує, але рішення здається більше експериментом.

Відмова від відповідальності: Інформація на цій сторінці може бути отримана від третіх осіб і не обов'язково відображає погляди або думки KuCoin. Цей контент надається лише для загального інформування, без будь-яких запевнень або гарантій, а також не може розглядатися як фінансова або інвестиційна порада. KuCoin не несе відповідальності за будь-які помилки або упущення, а також за будь-які результати, отримані в результаті використання цієї інформації. Інвестиції в цифрові активи можуть бути ризикованими. Будь ласка, ретельно оцініть ризики продукту та свою толерантність до ризику, виходячи з ваших власних фінансових обставин. Для отримання додаткової інформації, будь ласка, зверніться до наших Умов використання та Розкриття інформації про ризики.