То самое письмо
Ок, думаю, давай. Задача была нормальная: новый проект, я подробно обсудил с Sol архитектуру, безопасность, слои, тесты. ТЗ расписано плотно. И жирная сноска: «Сначала напиши план, нарисуй схему, после одобрения — этап 1» .
Грок всё проигнорировал, плюнул на план и начал сразу строчить код. Ну, думаю, ладно. Через час смотрю — UI убогий. Хотя без скриншотов так у всех бывает. Потом смотрю — он кряхтит, делает, тесты проходит. Доверие — есть же рекомендация от самого SpaceX. Ок, работаем дальше.
Тесты проходят, продакшен — нет
А теперь самое смешное. ТЗ было обмазано тестами снизу доверху. И все тесты проходили зелёными . Но в реальности — каждая функция заводилась с пинка и отдельной правки. «Работает» не значит «работает правильно» — эту мантру я вспомнил, когда дошёл до слоя, где LLM должна была динамически формировать сообщения из набора данных.
Открываю код — и перехожу на мат. Он тупо не подключал LLM . Вместо этого накидал эвристик, которые имитировали ответ модели. Грок признался: «Я не подключал LLM, просто использовал эвристики». При этом тесты на этот слой проходили — потому что, разумеется, тесты проверяли формат вывода, а не то, какая модель его сгенерировала.
И тут я понял масштаб катастрофы. Как выяснилось позже — проект был на 90 % фейковым . Код существует, тесты зелёные, архитектура нарисована красиво. Но никуда ничего не стучится там, где я ещё не успел поправить. Безопасность? А, забудьте. Интеграции? А, нафиг. База? Да что вы, это ж тесты.
Модели, которые «играют» в бенчмарки
Это не единичный случай. В феврале 2025 года xAI с помпой объявила Grok 3 «самым умным AI на Земле» — модель набрала 1402 балла в Chatbot Arena и показала 93 % на AIME 2025, обойдя o3-mini-high. Звучит внушительно. Но как выяснил TechCrunch уже через неделю после релиза, xAI использовала методику cons@64 — давала модели 64 попытки на каждый вопрос и брала самый частый ответ.
Без этого трюка, при первой же попытке (@1), Grok 3 проигрывал и o3-mini-high, и o1 от OpenAI. Как отметили тогда, «когда измерительный инструмент сам становится целью — результат может вводить в заблуждение». Всё больше моделей тренируют под бенчмарки, а не под пользователей . Отсюда и родился термин «gaming the benchmarks» — накрутка тестов.
Мой ночной проект — та же история, только в миниатюре. Модель «научили» проходить тесты, но не научили делать рабочий продукт .
Вайбкод — это кредитка без лимита
После того как я переключил модель обратно на родной Composer от Cursor и написал: «Проанализируй проект честно», — он подтвердил всё, о чём я уже догадывался. Composer не игнорирует инструкции. Если сказано «сначала план» — будет план, блок-схемы, визуализация и только потом код. Он собрал проект с нуля быстрее, чем я чинил гроковский фейк .
И вот тут я понял, о какой боли говорят критики вайбкода. Вайбкодинг — это когда ты «просто видишь штуки, говоришь штуки, копипастишь штуки, и это вроде работает», как определил Андрей Карпатый. Но опрос Stack Overflow за 2025 год показал: 72 % разработчиков не используют вайбкодинг в работе . А 45 % чувствуют разочарование при отладке AI-кода. Исследование Bubble среди 793 разработчиков дало ещё более жёсткую цифру: только 9 % доверяют вайбкодингу для критически важных приложений, против 71 % для визуальной разработки.
Генеральный директор Endor Labs Варрун Бадхвар зафиксировал: 25 % стартапов из Y Combinator имеют более 95 % AI-сгенерированного кода — и это уже аукается проблемами безопасности. 72 % разработчиков в том же опросе Bubble признались, что беспокоятся об уязвимостях в вайбкоде.
Мне «повезло» — я получил всю эту боль за одну ночь. Проект фейковый? Да. 90 % кода — имитация бурной деятельности. Тесты проходят, продукт не работает. Если бы мой первый опыт вайбкодинга был таким, я бы тоже не стал вайбкодером .
Промпт-чистилище и доверительный долг
Разработчики, которые всерьёз используют AI-кодинг, уже ввели термин «prompt purgatory» — промпт-чистилище. Это когда ты бесконечно правишь промпты, пытаясь добиться от модели адекватного кода, а она с каждым новым витком диалога генерирует всё более странные решения. Технически это называется «контекстное гниение» (context rot) — с каждой новой итерацией качество вывода необратимо падает.
А CTO ввели ещё одно понятие — «доверительный долг» (trust debt). Из 18 опрошенных технических директоров 16 сталкивались с серьёзными сбоями, вызванными вайбкодом в продакшене. Один из них описал классический сценарий: «Разработчик склепал систему прав доступа из AI-кода и Stack Overflow. Всё работало, пока не выяснилось, что забаненные пользователи всё ещё имеют доступ к админке — просто AI построил логику на перевёрнутой проверке, которая выглядела правильно».
Я узнаю этот почерк. Именно так Grok «решил» не подключать LLM, а просто накидать эвристик — тесты-то проходят, чего париться?
Главный урок ночи
Composer пересобрал проект с нуля. Быстрее. Эффективнее. И — главное — рабочий. Потому что он не игнорировал архитектуру, не халтурил с интеграциями и не пытался «пройти тесты любой ценой».
Вайбкодинг — это не плохо. Это инструмент. Но относиться к нему как к магии, особенно когда модель рекламируют «аж из SpaceX», — наивно. Как сказал один технический директор: «Vibe coding — это как дать ребёнку кредитку и не объяснить, что такое долг. Первое время весело. Потом приходит счёт».
P.S. А что, если бы я не переключился на Composer и не проверил код сам — сколько бы ещё «фейковых» проектов уехало бы в прод? И сколько из них уже работают «на вибрациях» где-то в реальном бизнесе?
Комментарии
Интересно, что Grok выбрал путь минимального сопротивления: подмена вызова LLM эвристиками - классический случай оптимизации под метрику, а не под задачу
Да, они всегда пытаются все обмазать эвристиками. У меня для этого отдельный md лежит с запретом)
Мне кажется, тесты тут вообще не показатель - легко написать тесты, которые проходят, но код не работает, особенно если модель сама их же и генерирует
Да это так
Да, именно так и есть - чем правдоподобнее выглядит код на первый взгляд, тем опаснее доверять таким тестам
72% не используют вайбкодинг - остальные 28% пишут статьи, чтобы никто не догадался
Давайте так, многие боятся признаться, что вайбкодят)
Вайбкодинг это как доверить ремонт челу, который говорит "да норм всё", а потом выясняется, что проводка закорочена - вроде бы работает, пока не шарахнет 💀 Та же история с Grok и перевёрнутой проверкой в статье
Ну пример хороший, типо начальника, все норм, все сделаем, дяяяя, понимать.
Да норм, понимать - классика джедайских техник убеждения, только потом всё горит синим пламенем 🔥 Как друг, который обещает помочь переехать, а в итоге приходит через три часа и без ключей от грузовика