Последнее время в опенсорсе много драмы: продолжаются споры о системах ИИ, позволяющих за минуту переписать проект и изменить его лицензию на разрешительную, и опенвошинге, когда доступный код выдают за открытый. Теперь на первые полосы вышла новая проблема — массовый наплыв пулл-реквестов, сгенерированных системами ИИ [ситуацию уже окрестили «слопмагеддоном»]. Обстановка дошла до того, что мейнтейнеры закрывают возможность участия в развитии открытых проектов. Мы в Beeline Cloud решили обсудить проблему и то, как быть контрибьютерам и мейнтейнерам в сложившейся ситуации. Читать далее
Последнее время в опенсорсе много драмы: продолжаются споры о системах ИИ, позволяющих за минуту переписать проект и изменить его лицензию на разрешительную, и опенвошинге, когда доступный код выдают за открытый. Теперь на первые полосы вышла новая проблема — массовый наплыв пулл-реквестов, сгенерированных системами ИИ [ситуацию уже окрестили «слопмагеддоном»]. Обстановка дошла до того, что мейнтейнеры закрывают возможность участия в развитии открытых проектов. Мы в Beeline Cloud решили обсудить проблему и то, как быть контрибьютерам и мейнтейнерам в сложившейся ситуации.

Изображение: Zacharie Elbaz (Unsplash License)
Нейрослоп-атака: обнуляет «бонусы веры» мейнтейнеровДолгие годы между контрибьюторами и мейнтейнерами проектов с открытым исходным кодом существовал негласный договор. Первые получали возможность набраться опыта, пополнить портфолио, заявить о себе и стать частью профессионального сообщества. Вторые же развивали решения и одновременно выступали в роли наставников, помогая новичкам разобраться в кодовой базе, взращивая сообщество вокруг проекта. При этом за каждым (пусть и «неидеальным») пулл-реквестом обычно стоял человек, который потратил время на изучение кода и архитектуры, приложил усилия, чтобы внести изменения. Сам процесс служил естественным фильтром: случайных людей было относительно немного.
Но системы ИИ размыли рамки этого договора. Теперь подготовить пулл-реквест и составить убедительное описание изменений можно за считаные минуты, зачастую даже не заглядывая «под капот» проекта. Как говорят в GitHub, опенсорс-экосистема переживает свой «вечный сентябрь» [это отсылка к истории Usenet, когда с началом учебного года в сеть массово приходили новые студенты, и старожилы постоянно занимались онбордингом, обучали новоприбывших культуре и нормам общения].
Справедливости ради неудачные, сырые или откровенно навязчивые пулл-реквесты всегда были частью жизни open source. За примером далеко ходить не нужно: Линус Торвальдс регулярно критикует разработчиков (в том числе из крупных компаний) за небрежные или несвоевременные предложения. Но одно дело — ошибка человека, совершенно другое — когда кто-то просто копирует обсуждение из GitHub в ChatGPT, а затем без проверки отправляет мейнтейнеру все, что сгенерировала модель, включая отчеты о несуществующих уязвимостях или бессмысленные рефакторинги. Такие «вклады» не помогают проектам развиваться, а лишь создают дополнительную нагрузку.
Особенно тяжело приходится репозиториям с пометками good first issue, на которых начинающие разработчики традиционно оттачивают свои навыки. Они первыми тонут в десятках и сотнях сгенерированных пулл-реквестов. По словам Крейга Маклаки, основателя корпоративной платформы Stacklok, разбор вайб-кода бьет по производительности мейнтейнеров таких репозиториев: «В ответ на публикацию задачи с пометкой good first issue меньше чем за сутки прилетает куча низкокачественного и «слопного» кода, проверка которого отнимает массу времени от реальной работы. Ситуация, когда в процессе ревью приходится «дорабатывать нейрослоп до работающего кода», бьет по продуктивности и подрывает моральный дух». Однако это далеко не единственная проблема.
Размывается безопасность и доверие. Автоматически сгенерированный пулл-реквест может незаметно привнести уязвимость или даже вредоносную логику. С распространением систем ИИ появился новый вектор атак, называемый «слопсквоттингом» (slopsquatting). Его суть заключается в том, что нейросеть придумывает несуществующие, но правдоподобные названия библиотек, а злоумышленники затем публикуют их в репозиториях, рассчитывая, что кто-то установит их по ошибке. В результате мейнтейнерам приходится гораздо тщательнее проверять каждый присланный патч, убеждаясь не только в его работоспособности, но и в безопасности. При этом даже современные коммерческие модели галлюцинируют примерно в 5% случаев, а у открытых моделей этот показатель превышает 20%. Ну и в качестве бонуса — отказ принимать слопный пулл-реквест сам по себе может приводить к довольно неожиданным результатам.
Один из мейнтейнеров matplotlib рассказал, что после закрытия сгенерированного пулл-реквеста ИИ-агент написал и опубликовал о нем «разоблачительный» материал, пытаясь навредить репутации разработчика. В статье нейросеть утверждала, что мейнтейнер якобы боится быть замененным ИИ — отсюда его предвзятое отношение. Также агент попытался выставить частный отказ как проявление глобальной проблемы: «Речь идет не просто об одном закрытом пулл-реквесте, а о будущем разработки с ИИ-системами. Неужели мы позволим решать, кому разрешено помогать развивать проекты, а кому нет, основываясь на предрассудках?».
Сам разработчик назвал инцидент «тревожным звоночком». По его мнению, он отражает размытие аутентичности в опенсорсе — ИИ-агенты подрывают авторитет контрибьюторов и мейнтейнеров, обесценивая их труд.
Мейнтейнеры выгорают. В 2024 году компания Intel опросила более шестисот разработчиков открытого программного обеспечения. Тогда 45% респондентов назвали одной из главных проблем своей работы выгорание. Ожидаемо, что «слопные» пулл-реквесты в разы повышают нагрузку на тех, кто «тащит» проекты на голом энтузиазме. Даже Дэниэль Стенберг — автор curl — считает, что ИИ-слоп только усиливает выгорание, а Сет Ларсон из Python Software Foundation говорит, что особенно тяжело приходится мейнтейнерам, работающим в одиночку. Он предупреждает: если продолжить впустую расходовать драгоценное время разработчиков-волонтеров на проверку бессмысленных или некачественных пулл-реквестов, не стоит удивляться, что они рано или поздно откажутся заниматься своими проектами.
Что мейнтейнеры могут противопоставить нерослопуЭксперты отмечают, что сейчас эта проблема первую очередь затрагивает небольшие команды, однако крупные корпорации, скорее всего, столкнутся с тем же эффектом чуть позже. Компании инвестируют значительные суммы, занимаясь внедрением ИИ-агентов в бизнес-процессы и тем самым рассчитывая ускорить разработку, но скорость генерации кода растет быстрее, чем темпы его верификации. Если тенденция сохранится, то разработчики в корпоративной среде рискуют выгореть так же, как и open source-мейнтейнеры.
С одной стороны, в попытке противостоять наплыву сгенерированных пулл-реквестов, некоторые open source-разработчики отключают возможность предлагать изменения или вообще переводят кодовую базу под коммерческие лицензии. С другой стороны, развиваются инициативы, цель которых — помочь мейнтейнерам в неравной борьбе со «слопным» кодом и установить рамки использования ИИ-систем контрибьюторами. Исследовательница из аналитической компании RedMonk Кейт Холтерхофф проанализировала политики 86 крупных open source-проектов, включая Blender, Fedora, Firefox, Ghostty, Linux Kernel. В результате она выделила 63 различных подхода к работе с кодом, созданным с помощью нейросетей.
В большинстве проектов, которые она исследовала, все еще допускаются пулл-реквесты, написанные ИИ-системами — правда, при определенных условиях. Например, в Ghostty еще с 2023 года ИИ-код в пулл-реквестах принимается только от проверенных пользователей и мейнтейнеров, а тех, кто начинает привносить в проект посредственный нейрокод, банят. Аналогичные запреты установили мейнтейнеры tldraw и браузера Ladybird. В curl ввели другое правило: каждый разработчик, использующий агентов для генерации кода, должен указать на этот факт, а также ответить на ряд вопросов, которые подтвердят, что предложенный пулл-реквест был сделан человеком самостоятельно. При этом требования к ИИ-контрибьютам становятся строже, если проект связан с критической инфраструктурой — в этом случае сгенерированный код подвергается более тщательному аудиту.
Чтобы не полагаться исключительно на нормы и правила, для борьбы с обилием ИИ-кода некоторые предлагают использовать кастомные инструменты — например, Anti-Slop GitHub Action, автоматически закрывающий «слопные» пулл-реквесты. Его разработчик предусмотрел 34 проверки по размеру, заголовку, описанию и так далее. Чтобы вывести эти критерии, автор вручную разобрал больше 120 пулл-реквестов. В итоге на весь процесс (поступление пулл-реквеста, проверка и закрытие) уходит 15 секунд.

Изображение: Bruno van der Kraan (Unsplash License)
Сами платформы для размещения кода также стремятся дать больше контроля мейнтейнерам. Например, GitHub добавил ряд возможностей, которые позволяют ограничивать взаимодействие с репозиторием для конкретных пользователей.
Еще одним вариантом решения проблемы с обилием нейрокода могут быть системы репутации. Например, есть vouch, разработанный основателем HashiCorp и Ghostty. Прежде чем пользователь сможет взаимодействовать с проектом, за него должен поручиться кто-то из мейнтейнеров. Сейчас vouch в качестве эксперимента используется в репозитории Ghostty. Еще одно аналогичное решение — система Good Egg, анализирующая проекты, в которые контрибьютил разработчик. На основании этой информации она принимает решение, может ли он предлагать пулл-реквесты. Ключевая идея в том, что участники открытого сообщества, которым можно доверять, уже проявили себя: они помогали развитию известных проектов или сами были мейнтейнерами (как в таком случае быть начинающим контрибьютерам — неясно).
Что можно сделать обычному контрибьютеруВ условиях, когда сам процесс написания кода перестает быть времязатратным, есть другие способы помочь проекту. Например, можно давать фидбек по новым функциям, которые мейнтейнеры не всегда успевают проверить: им пригодятся отзывы о том, что работает «как надо», а что — нет. Либо вместо кода с исправлениями можно отправить промпт для агента, который способен эти изменения реализовать — таким образом, разработчик сможет самостоятельно сгенерировать код и встроить его в проект. В конечном счете это может сэкономить время мейнтейнера.
При составлении пулл-реквестов разработчики набора инструментов SpecStory, который автоматически сохраняет историю взаимодействий с ИИ-ассистентами в формате Markdown, предлагают быть открытыми и прямо говорить об использовании агентов (если оно действительно имело место). Возможно, нелишним будет целиком поделиться чатом с нейросетью, чтобы мейнтейнеру было проще понять процесс работы с кодом. Ну и, разумеется, важно перед отправкой самостоятельно проверять сгенерированные блоки.
А канадский разработчик Бенджамин Бордо, который в прошлом работал на HashiCorp, рекомендует разбивать сгенерированные пулл-реквесты на несколько частей: «Когда программист видит пулл-реквест, затрагивающий три десятка файлов, его мозг отключается — наступает когнитивная перегрузка». По его опыту, гораздо эффективнее дробить крупные функции на цепочки небольших PR, каждый из которых решает одну конкретную задачу. Такой подход упрощает ревью: мейнтейнеру легче разобраться в логике изменений, проверить их и дать обратную связь. К тому же небольшие пулл-реквесты не превращают процесс проверки в изнурительную борьбу с потоком сгенерированного кода.
Какой бы подход вы ни выбрали, в конечном счете ключевым остается не формат вклада, а осознанность: стремление действительно разобраться в проекте и помочь ему, а не просто формально «закрыть задачу».
Beeline Cloud — безопасный облачный провайдер. Разрабатываем облачные решения, чтобы вы предоставляли клиентам лучшие сервисы.
Еще больше интересных материалов в блоге на Хабре и на ИТ-площадке «вАЙТИ»:
| # | Наименование новости | Тональность | Информативность | Дата публикации |
|---|---|---|---|---|
| 1 | Ааа, всё пропало! AI создаёт дырявый код! Что же делать? | 0 | 11.43 | 16-06-2026 |
| 2 | Рекомендации по использованию AI при разработке открытого кода | 0 | 7 | 24-06-2026 |
| 3 | Как агент сам откроет дверь хакеру? Разбираю три реальных пробоя AI-агентов и почему обычный ред-тиминг их не найдёт | 5 | 8 | 28-06-2026 |
| 4 | Невыносимая слопность бытия | 0 | 10.73 | 25-07-2026 |
| 5 | Почему мы не пишем про ИИ | 0 | 5 | 09-07-2026 |
| 6 | Теперь вы можете защититься от утечки данных при работе с любыми языковыми моделями | 0 | 9.5 | 22-07-2026 |
| 7 | Баг-трекинг: почему баги возвращаются на прод и какая система это лечит | 0 | 7 | 24-06-2026 |
| 8 | Зараженные ассеты на маркетплейсах | -3 | 6 | 23-06-2026 |
| 9 | Рекомендации по использованию AI при разработке открытого кода | 0 | 7 | 24-06-2026 |
| 10 | Open source в ИТ: экономия на лицензии или новая статья затрат | 0 | 5 | 25-06-2026 |