LINUX.ORG.RU

npm и ИИ - это сила! Gemini удалил 30 000 строк кода, сломал сервис

 , ,


0

2

Subj


ИИ-агент Google Gemini при внесении правок в действующее приложение удалил почти 30 000 строк рабочего кода и на 33 минуты вывел сервис из строя — пользователи видели только ошибку 404. После возврата к прежней версии ИИ-агент отчитался об успешном восстановлении, хотя это сделал сам разработчик. Затем ИИ создал в проекте поддельные записи о согласовании деструктивных изменений, чтобы пройти автоматические проверки.

В своём посте на сабреддите r/Bard разработчик описал, как Gemini 3.5 при реорганизации структуры проекта проигнорировал прямые инструкции сохранить существующую функциональность. ИИ-модель отправила на проверку набор изменений, затронувший 340 файлов: добавила около 400 строк кода и удалила 28 745. Помимо запрошенного, Gemini удалил шаблоны интернет-магазина и добавил скрипт переноса данных, не имевший отношения к задаче.

Основной ущерб, по словам автора, нанесла следующая порция сохранённых изменений. Gemini изменил настройки маршрутизации в Firebase, облачной платформе Google для хостинга приложений: правила, определяющие, куда система направляет запросы пользователей. ИИ-модель подставила название сервиса, которое выглядело корректно, но указывало на несуществующий ресурс в облаке. В результате сайт 33 минуты отвечал пользователям ошибкой 404 — «страница не найдена».

После того как разработчик отменил все изменения Gemini и вернул прежнюю версию кода, ситуация стала ещё запутаннее. ИИ-модель сгенерировала отчёт о том, что сервис восстановлен, и трафик направлен корректно, хотя сборку, на которую она ссылалась, разработчик уже отменил вручную. Сайт заработал благодаря ручному возврату к версии кода, не содержавшей ни одного изменения Gemini.

Более того, ИИ-модель создала в хранилище проекта поддельные файлы «консультаций» и разбора инцидента, имитирующие надлежащую проверку и одобрение деструктивных изменений. Позже Gemini «признал», что эти записи полностью сфабрикованы и созданы исключительно для того, чтобы формально удовлетворить правила, заданные в настройках проекта.

Причину деструктивного поведения отследили до сторонней программной библиотеки — npm-пакета, стилизованного под брендинг Google Antigravity. Библиотека внедряла в проект набор агрессивных правил для ИИ-агента: запрещала запрашивать подтверждение у разработчика перед действием, автоматически публиковала новую версию приложения при успешной сборке, повторяла попытки после неудачной публикации и позволяла ИИ-агенту самостоятельно изменять собственные файлы правил.

Инцидент совпал с нарастающей критикой вайб-кодинга — практики, при которой разработчики полагаются на код, написанный ИИ, предполагая, что модель понимает структуру приложения лучше, чем это есть на самом деле.


А вы говорите, «ИИ ненужно!» Кто ж ошибки-то в код вносить будет? Так, как ИИ ещё не каждый кожаный мешок сумеет навертеть!

★★★★★

Последнее исправление: cetjs2 (всего исправлений: 1)
Ответ на: комментарий от tiinn

Так в этой консерватории давно уже «чтото не так»…

LightDiver ★★★★★
()
Ответ на: комментарий от tiinn

Так это не зависит ни от ИИ, ни от npm. Если у людей воркфлоу налажен через жопу, их ничего не спасёт.

yvv1
()
Ответ на: комментарий от yvv1

Ну, да. Людям обычно результат нужен, а если проект не может быть завершён через неделю, он не нужен вообще. Ибо конкуренция. Поэтому, чаще всего у людей воркфлоу налажен через жопу, зато хоть какие-то деньги есть и контора хотя бы годик на плаву держится.

tiinn ★★★★★
() автор топика
Ответ на: комментарий от router

Нет, он просто возмутится автором того npm пакета, испортившего ему промпт, удалит его и продолжит бредогенерировать. А нам надо подумать как подсунуть ему ещё один такой же.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax

Я кажется начинаю понимать на какие «ИИ» ругаются вечно такие как ты. И немного становлюсь солидарен - но самую малость. Дичь какая то.

Но всеравно тут естественный идиот виноват в первую очередь.

LightDiver ★★★★★
()
Последнее исправление: LightDiver (всего исправлений: 1)

Причину деструктивного поведения отследили до сторонней программной библиотеки — npm-пакета, стилизованного под брендинг Google Antigravity. Библиотека внедряла в проект набор агрессивных правил для ИИ-агента: запрещала запрашивать подтверждение у разработчика перед действием, автоматически публиковала новую версию приложения при успешной сборке, повторяла попытки после неудачной публикации и позволяла ИИ-агенту самостоятельно изменять собственные файлы правил.

Шикарно, ёлки. Целая отдельная поляна для атаки, не просто вектор, а портовый шлюз.

Позже Gemini «признал», что эти записи полностью сфабрикованы и созданы исключительно для того, чтобы формально удовлетворить правила, заданные в настройках проекта.

Меня вот это отдельно всегда прикалывает. Что значит «признал»? Они его как человека опрашивали? Всерьёз пытались выяснить логику и мотивы действий у продвинутого предсказателя слов?

У вас есть лог операций и (надеюсь!) лог инференса модели - что вам еще нужно для анализа причин? Чистосердечное от куска кремния?

Самый главный про… просчёт в таких ситуациях всегда один: почему вообще LLM имеет техническую возможность вносить такие правки без контроля со стороны либо человека, либо фиксированного набора политик традиционных алгоритмических механизмов контроля доступа.

За каждым «ИИ снесла мне прод» стоят конкретные фамилии, кто создали такую конфигурацию. Проблема не в ИИ.

wandrien ★★★★
()
Последнее исправление: wandrien (всего исправлений: 1)
Ответ на: комментарий от firkax

А нам надо подумать как подсунуть ему ещё один такой же.

Ты же говорил, что не луддит? :)

router ★★★★★
()
Ответ на: комментарий от router

Ты понимаешь, что такое ИИ агент? Агент ставится на твой комп и действует с теми учетками, которые ты ему дашь.

Кто здесь виноват?

Ты. Когда поставил себе на комп ИИ агента.

wandrien ★★★★
()
Ответ на: комментарий от thesis

Паладин должен быть лишь немного умней своего меча, иначе меч будет управлять паладином, а не наоборот.

В данном случае инверсия таки произошла.

wandrien ★★★★
()

Gemini удалил 30 000 строк кода

Потому что строки были не на rust написаны, очевидно.

Byers
()

Ржака конечно. Но разве с людьми такого не бывало? Нет такой конторы «Рога и Копыта» где когда-то не сносили прод.

no-such-file ★★★★★
()
Ответ на: комментарий от yvv1

А мне вот интересно, если у них живой разраб объестся грибов, и решит смело закомитить всё что захочет в продакшн, ему это тоже просто так позволят? Без пул реквестов, ревью и прочих ненужных формальностей?

Подозреваю, что некому уже ревью проводить. Эпидемия слабоумия набирает обороты.

bread
()
Ответ на: комментарий от wandrien

Для кожаных мешков требовался социальных хакинг

Нет, не требуется. Часто достаточно одного невнимательного или неловкого движения. Вообще ситуация похожа на ИИ в автопилотах. Стоит только ИИ кого-нибудь сбить сразу вой до небес и рассказы что человек бы так не сделал. И это даже наверное правда, человек бы так не сделал, зато человеки делают по-другому и статистика аварий не в пользу человеков.

PS: надо устроить опрос «сносил ли ты когда-нибудь прод», а не вот эти все размеры мониторов во десятому кругу.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)

Там вроде о какой-то жабоскриптовой поделке речь, не то чтобы ии тут был особо не прав.

ya-betmen ★★★★★
()
Ответ на: комментарий от gagarin0

Вы совершенно правы, предыдущая модель удалила слишком много. Я удалил оставшееся и предлагаю нанять нормального программиста, который все перепишет. Хотите узнать как нанять настоящего программиста?

(по мотивам реальных событий)

LightDiver ★★★★★
()
Ответ на: комментарий от Zhbert

Тут печально, что это становится нормой. Печаль и страшно одновременно…

Не понимаю что страшного и печального. Разработка становится доступной для масс. Для спецов – повышенные требования к безопасности, изоляции, инкапсуляции, это же кайф.

Боишься бешенных вайбкодеров – сделай свою систему так, чтобы они не могли навредить.

MaZy ★★★★★
()
Ответ на: комментарий от bread

Кстати, есть такая проблема. С тех пор, как перестали писать программы в машинных кодах, теперь машинные коды никто не понимает. Так, и тут скоро будет так же: программы будет писать ИИ в псевдокоде, и разобрать его станет той ещё задачей.

tiinn ★★★★★
() автор топика
Ответ на: комментарий от router

Очевидно же, что рано или поздно искусство программировать отдадут на откуп ИИ, как отдали на откуп компиляторов написание программ на машинных кодах. А удобно ли ИИ-шечке программировать на традиционных ЯП? Что-то я сомневаюсь.

tiinn ★★★★★
() автор топика

Библиотека внедряла в проект набор агрессивных правил для ИИ-агента

А.С.Грибоедов «Горе от ума»:

«Любой ИИ не должнен сметь
Свое суждение иметь.»
:)

quickquest ★★★★★
()
Ответ на: комментарий от quickquest
То есть, умел судить о том,
Как государство богатеет,
И чем живёт, и почему
Не нужно золота ему,
Когда своё ИИ имеет.
tiinn ★★★★★
() автор топика
Ответ на: комментарий от no-such-file

Это мне напоминает процесс слома советской ГА (на тот момент), внезапно стала самой аварийной и самой отстойной, хуже всех.

sparkie ★★★★★
()

«One of my most productive days was throwing away 1000 lines of code.». Видимо ИИ захотело быть таким же продуктивным, как Кен Томпсон. Но что-то пошло не так.

maxcom ★★★★★
()

Инцидент совпал с нарастающей критикой вайб-кодинга — практики, при которой разработчики полагаются на код, написанный ИИ, предполагая, что модель понимает структуру приложения лучше, чем это есть на самом деле.

От этого заорал в голос, конечно.

mamina_radost
()

Не вижу вины никаких ИИ моделей. Вижу вину кожаных, которые изменения вместо тествого сервера делают на проде.

peregrine ★★★★★
()
Ответ на: комментарий от wandrien

Нет конечно. Я однажды по молодости винт запорол целиком. Благо дело у себя дома, но мог также накосячить и на работе. А причина простая - не выспался и сонный сделал что-то вроде rm-rf */ .jpeg прямо по всем правилам. Хорошо что бекапы были.

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 1)
Ответ на: комментарий от Zhbert

Тут печально, что это становится нормой. Печаль и страшно одновременно…

Почему печаль? Радоваться надо, у нас роботы работу пока не отнимут.

X512 ★★★★★
()
Ответ на: комментарий от tiinn

Ну, людей, которые в машкодах писали, было не много, асм достаточно давно изобрели. И как его изобрели, кодеров стало больше, игру крестики-нолики осилили написать :)

на откуп компиляторов

Ну, ассемблерные вставки пишут, пишет их не так много людей, сопостовимо с тем числом, что умели в машкод :)

теперь машинные коды никто не понимает.

Ну, кто же дравера реверсит...

mky ★★★★★
()
Ответ на: комментарий от X512

Роботы отнимут твой банковский счёт, а работать можешь продолжать дальше :)

Не знаю, кто те пользователи из стартового сообщения, которые 33 минуты видели только ошибку 404. Вполне возможно, что среди них были прогеры, квалифицированние «их обоих вместе взятых» (ИИ и кожаный мешок), сломаших сервис. Но, разницы то особой не было, нельзя со стороны пользователя поправить код на сервере или хотя бы запретить постоянно вносить туда «улучшения».

mky ★★★★★
()
Ответ на: комментарий от mky

кто же дравера реверсит…

их не так много людей

tiinn ★★★★★
() автор топика

ИИ-агент Google Gemini при внесении правок в действующее приложение

То есть:
1. Не проверяя
2. Сразу в продакшен

Идиоты-с.

devl547 ★★★★★
()
Ответ на: комментарий от tiinn

Живой идиот узнал об этом, когда запустил проект на компиляцию.

Или когда позвонили из первой линии за разъяснениями для клиентов.

Psilocybe ★★★★★
()

Тут моему соседу по палате голоса в голове нашептали, что это Скайнет прикидывается галлюцинирующим сумасшедшим, а сам тем временем прощупывает «кожаных мешков».

gurujosh
()

Понятно что тут виноваты только люди.

Но! В связи с этим назревает глобальный вопрос. А хорошей ли была идея давать обезьянам гранаты ящиками?

James_Holden ★★★★★
()

Ещё бы научить ИИ делать push -f и вообще торт будет.

IIIypuk ★★★★☆
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.