Вайбкодинг заканчивается не там, где код стал сложным, а там, где ошибка стала дорогой для других.

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

  • Можно прототипировать: тестовые данные, ручное подтверждение, ограниченный круг и обратимые действия.
  • Нужны тесты и пилот: реальные пользователи при лимитах, наблюдаемости, проверенном откате и поддержке.
  • Нужен специалист: высокая цена ошибки, регулируемые данные, деньги, сложная авторизация или критическая инфраструктура.

Прототип доказывает ценность. Продакшн обязан выдерживать последствия.

Прототип отвечает на вопрос: «Нужен ли человеку такой сценарий?» Он может работать на небольшом объёме, с ручным контролем и временными решениями. Продакшн отвечает на другой вопрос: «Что произойдёт, когда сервис ошибётся, зависнет, получит вредоносный ввод или столкнётся с пользователем, который действует не по инструкции?»

NIST SSDF описывает безопасную разработку как набор практик, которые встраиваются в жизненный цикл, а не добавляются после релиза. [1] CISA формулирует сходный принцип Secure by Design: ответственность за безопасность продукта начинается на этапе проектирования и должна быть включена по умолчанию. [8]

Это не аргумент против вайбкодинга. Наоборот, быстрый прототип помогает раньше увидеть реальный поток пользователя. Просто его нельзя незаметно превратить в продакшн добавлением домена и формы оплаты.

Полезное различие: код прототипа показывает сценарий, а система продакшна ограничивает последствия. В неё входят права доступа, резервное восстановление, журналы, лимиты, поддержка, обработка жалоб, договоры с сервисами и понятный способ остановить опасную функцию. Большая часть этого не видна на экране, поэтому AI легко создаёт иллюзию готовности раньше времени.

Оцени восемь осей до выбора технологий.

Вопросы, которые определяют режим запуска
ОсьНизкий рискСигнал эскалации
ДанныеСинтетические или публичные примерыПерсональные, медицинские, биометрические, платёжные данные
ДеньгиНет списаний и выплатВозвраты, разделение одной оплаты между несколькими получателями, баланс, подписки, налоги
ПраваОдин пользователь видит только своёКоманды, роли, модераторы, организации, делегированный доступ
Цена ошибкиРезультат легко удалить и повторитьУтечка, потеря денег, блокировка доступа, физический или репутационный вред
ИнтеграцииТестовый API только для чтенияЗапись, публикация, письмо, платёж, удаление, рабочее облако
МодерацияНет пользовательского контентаЖалобы, мошенничество, преследование, запрещённый контент
Сетевой эффектЗакрытый тест на нескольких людяхОдин сбой быстро затрагивает тысячи контактов или публикаций
Автономность AIСовет, который подтверждает человекМодель сама отправляет, блокирует, тратит или меняет данные

NIST AI RMF предлагает управлять AI-рисками через govern, map, measure и manage в течение всего жизненного цикла. [2] [3] Практический перевод для маленькой команды: сначала опиши задачу и затронутых людей, затем сценарии ошибки, измерение и меры сдерживания.

Как выставлять уровень. Не спрашивай только «насколько вероятна ошибка». Запиши ещё максимальный правдоподобный ущерб и число людей, которых она затронет до остановки. Редкая ошибка с утечкой паспортов или повторной выплатой может быть красной, даже если интерфейс и основной сценарий работают идеально.

Матрица решения: не усредняй критичную ось.

Поставь каждой оси низкий, средний или высокий уровень. Итог определяет не среднее значение, а самый тяжёлый реалистичный сценарий. Один высокий риск может перевести весь запуск в режим экспертной проверки.

Зелёная зона

Можно прототипировать

  • Нет реальных чувствительных данных.
  • Нет денег и необратимых действий.
  • AI предлагает, человек решает.
  • Доступ закрыт небольшой группе.
  • Результат можно полностью удалить.

Жёлтая зона

Нужны тесты и пилот

  • Есть реальные, но ограниченные данные.
  • Действуют лимиты и ручные подтверждения.
  • Есть мониторинг, поддержка и проверенный откат.
  • Права покрыты негативными тестами.
  • Пилот ограничен числом пользователей.

Красная зона

Нужен специалист

  • Высокий ущерб одной ошибки.
  • Платежи, регулируемые или особо чувствительные данные.
  • Сложная авторизация и админ-доступ.
  • AI действует без человека.
  • Ошибка масштабируется через сеть.

Для веб-приложений OWASP ASVS даёт проверяемые требования к техническим контролям, а OWASP API Security Top 10 помогает не забыть объектную авторизацию, ограничение ресурсов и риски внешних API. [5] [6]

Если сомневаешься между двумя зонами, выбирай более строгую до появления доказательства. Доказательством может быть тест, техническое ограничение, документ провайдера или заключение специалиста. Фраза «AI сказал, что всё безопасно» доказательством не является.

VPN: интерфейс прост, скрытая система сложная.

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

Ошибка в цвете кнопки почти безвредна. Ошибка в выдаче конфигурации может открыть чужой доступ. Неверная маршрутизация влияет на трафик пользователя. Компрометация панели управления затрагивает весь парк серверов. Поэтому UI и закрытый demo относятся к прототипу, а сеть, криптография, ключи, эксплуатация и правовые вопросы требуют профильных специалистов.

Перед разработкой нарисуй границы доверия: где данные переходят от одного владельца или уровня доступа к другому. Отдельно отметь устройство пользователя, control plane — систему, которая выдаёт конфигурации и управляет серверами, data plane — путь реального сетевого трафика, платёжного провайдера, поддержку и администратора. Моделирование угроз как раз начинается с активов, границ доверия, угроз и мер защиты. [9]

Что защищать в первую очередь. Закрытые ключи не должны попадать в клиент или общие логи. Пользователь должен получать только свою конфигурацию. Компрометация одного узла не должна давать доступ ко всей инфраструктуре. Административные действия нужно ограничивать и журналировать, а отзыв ключа — регулярно проверять. Выбор протокола и криптографии перед запуском должен проверить специалист по сетевой безопасности.

Маркетплейс: каталог можно прототипировать, движение денег нельзя считать обычной формой.

Каталог, поиск, карточку товара и черновик заказа можно тестировать на фиктивных продавцах и ручном подтверждении. Сложность появляется вместе с реальными платежами, возвратами, выплатой одной суммы нескольким сторонам, спором покупателя и продавца, мошенничеством, остатками, доставкой, налоговыми документами и правами сотрудников поддержки.

Одна операция должна быть идемпотентной: повтор webhook не создаёт второй заказ или выплату. Статус на клиенте не доказывает успешность платежа. Доступ сотрудника к заказу не должен автоматически открывать все данные покупателя. Эти требования затрагивают архитектуру, безопасность, бухгалтерию и применимое право.

Полезная граница пилота: деньги двигает проверенный платёжный провайдер, все рискованные операции подтверждаются человеком, суммы и число продавцов ограничены, а сверка и возврат имеют отдельный тестовый сценарий. Архитектурно платежи держатся за отдельным адаптером, как описано в карте слоёв AI-сервиса.

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

Знакомства и рекомендации: алгоритм создаёт социальные последствия.

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

Рекомендация влияет на то, кого видит пользователь и кто видит его. Ошибка или злоупотребление может масштабироваться через сетевой эффект: один аккаунт контактирует со многими людьми, а неверное правило модерации затрагивает целую группу. Для генеративного AI добавляются внедрение вредоносной инструкции в запрос, раскрытие чувствительной информации и чрезмерные полномочия агента. Эти риски входят в актуальное руководство OWASP GenAI LLM Top 10 2026. [7]

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

NIST Generative AI Profile предлагает рассматривать специфические риски генеративных систем в связке с целями и приоритетами организации. [4] На практике это означает отдельные тесты рекомендаций, жалоб, блокировок, обходов правил и действия модератора, а не только проверку «модель отвечает».

Между демо и открытым продом есть ограниченный пилот.

  1. Контур

    Ограничь аудиторию и данные.

    Приглашения вместо открытой регистрации, минимальный набор полей, отдельные тестовые организации или пространства, данные которых не смешиваются.

  2. Полномочия

    Оставь необратимые действия человеку.

    AI готовит черновик, но не отправляет сообщение, не списывает деньги, не удаляет данные и не блокирует пользователя без подтверждения.

  3. Лимиты

    Ограничь радиус поражения.

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

  4. Наблюдаемость

    Подготовь метрики и поддержку.

    Команда видит ошибки, стоимость, отклонения и жалобы. Есть kill switch — один проверенный способ быстро отключить опасную функцию без остановки всего продукта.

  5. Выход

    Заранее определи критерий расширения.

    Пилот становится шире только после прохождения тестов, разбора инцидентов и закрытия критичных неизвестных.

После классификации собранный сервис нужно пропустить через пять технических проверок безопасности. Если сайт собирает данные в Казахстане, отдельно построй карту потока персональных данных.

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

Что обычно путают при переходе к продакшну.

Ложный сигнал и правильная проверка
Ложный сигналПочему недостаточноЧто проверить
«Работает у меня»Нет нагрузки, конкуренции запросов и чужого вводаНегативные, интеграционные и нагрузочные сценарии
«AI написал тесты»Тест может повторить ошибочное понимание агентаТребования, независимые сценарии и ручная проверка риска
«Используем известный сервис»Интеграция и права могут быть настроены неверноНабор разрешений, входящие уведомления, ошибки, повторные попытки, удаление, договоры
«Данных пока мало»Вред одному человеку всё равно реаленЧувствительность и максимум ущерба одной ошибки
«Всегда можно откатить»Утечку, письмо и выплату нельзя вернуть из мираНеобратимые эффекты и механизм подтверждения

Классифицируй проект до того, как просить AI дописывать функции.

Начни Claude Code в режиме plan и ограничь доступные инструменты чтением. Такие параметры предусмотрены CLI. [10] Скачать полный промпт.

claude-production-risk-prompt.mdclassify first
Сначала только изучи описание продукта и файлы. Не меняй проект и не запускай команды без подтверждения. Не проси реальные данные, токены и платёжные ключи.

Оцени восемь осей: данные, деньги, права, ущерб одной ошибки, интеграции, модерация, сетевой эффект и автономность AI. Для каждой укажи доказательство, неизвестное и уровень риска.

Итог классифицируй строго: «можно прототипировать», «нужны тесты и ограниченный пилот» или «нужен профильный специалист до запуска».

Верни карту системы, матрицу риска, худший реалистичный сценарий, ограничения пилота, обязательные тесты и роли специалистов. Если данных не хватает, не занижай риск. После отчёта остановись.

Частые вопросы о границе между прототипом и продакшном.

Нужен ли специалист для любого вайбкодинг-проекта?

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

Кто именно нужен?

Зависит от красной оси. Для авторизации и инфраструктуры — опытный backend или security-инженер. Для персональных данных — профильный юрист и инженер, который построит карту. Для платежей — разработчик интеграций плюс финансовый или юридический владелец процесса. Для VPN — сетевой специалист. Для знакомств — ещё и владелец модерации и пользовательской безопасности.

Если платёж полностью ведёт внешний сервис, риск исчезает?

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

Как понять, что пилот можно расширять?

Заранее запиши измеримые условия: критичные сценарии прошли, права покрыты негативными тестами, жалобы разбираются в срок, лимиты срабатывают, восстановление проверено, красные неизвестные закрыты специалистами. Рост числа пользователей — результат прохождения условий, а не замена проверке.

Может ли AI сам провести финальный аудит?

AI полезен для карты системы, списка неизвестного и генерации тестов. Финальный допуск нельзя отдавать одной модели: она не наблюдает все внешние настройки, договоры и последствия. Красные риски подтверждаются независимыми тестами и профильными людьми.

Быстро собирать можно. Быстро расширять последствия ошибки нельзя.

Хороший прототип уменьшает неизвестность о продукте. Хороший production-процесс уменьшает неизвестность о вреде. Раздели эти задачи, выбери режим запуска по самой критичной оси и привлеки специалиста до того, как риск станет пользовательским инцидентом.