Продакшн на Laravel руками ИИ‑агента: честный отчёт о том, что работает, а что чуть не уронило прод. Claude.. Claude. claude code.. Claude. claude code. Laravel.. Claude. claude code. Laravel. llm.. Claude. claude code. Laravel. llm. PHP.. Claude. claude code. Laravel. llm. PHP. зерокодинг.. Claude. claude code. Laravel. llm. PHP. зерокодинг. искусственный интеллект.. Claude. claude code. Laravel. llm. PHP. зерокодинг. искусственный интеллект. Ненормальное программирование.. Claude. claude code. Laravel. llm. PHP. зерокодинг. искусственный интеллект. Ненормальное программирование. продакшн.. Claude. claude code. Laravel. llm. PHP. зерокодинг. искусственный интеллект. Ненормальное программирование. продакшн. разработка через ИИ.. Claude. claude code. Laravel. llm. PHP. зерокодинг. искусственный интеллект. Ненормальное программирование. продакшн. разработка через ИИ. тестирование.. Claude. claude code. Laravel. llm. PHP. зерокодинг. искусственный интеллект. Ненормальное программирование. продакшн. разработка через ИИ. тестирование. Управление разработкой.

Я аналитик, а не разработчик. Весь код для созданной нами платформы написал Claude Opus через Claude Code. Рассказываю без хайпа: как выглядит реальный workflow, где нейросеть незаменима, где она бесполезна, и какая инженерная дисциплина обязательна, чтобы это не превратилось в тыкву на боевом.

Сразу обозначу рамку, чтобы снять половину вопросов из комментариев.

Я не умею писать продакшн‑код. Я аналитик: читаю код, рассуждаю о системах, проектирую поведение — но профессионально не кодю. Тем не менее у нас в проде работает нетривиальное веб‑приложение, и каждую строчку кода написала нейросеть (Claude Opus, агент Claude Code). Моя роль — архитектор, продакт и QA. Второй ключевой человек — дизайнер веб‑интерфейсов, тоже освоивший Claude.

Это не пост «ИИ сам всё сделал, программисты не нужны». Скорее наоборот: я хочу показать, что инженерия никуда не делась — просто из неё вынули операцию «набирать код руками». Всё остальное (проектирование, компромиссы, ловля прод‑онли багов, дисциплина релизов) осталось на человеке. И вот об этом «остальном» — интереснее всего.

Что за приложение (коротко, без рекламы)

Кейс — блогплатформа «Думайте». Технически это не лендинг и не CRUD‑тудушка, а связка десятков подсистем:

  • Бэкенд: PHP 8.4, Laravel, Livewire, очереди (Horizon), реалтайм на WebSocket (Reverb).

  • Данные: MySQL 8 в проде, полнотекстовый поиск на Meilisearch (Scout), Redis, медиа на S3.

  • Фронт: Livewire + Alpine.js + Tailwind, кастомный редактор на TipTap, PWA с web‑push.

  • Прочее: OAuth (VK/Яндекс/Telegram), почтовые дайджесты, антифрод‑подсистемы, админка на Filament.

  • Тесты: больше 1300 автотестов на Pest, гоняются перед каждым деплоем.

Так выглядит то, что мы создали

Так выглядит то, что мы создали

Зачем всё это — вопрос продуктовый, опущу (тизер: оценка контента по двум осям Полезно и Интересно вместо лайков). Здесь речь про то, как это строилось руками ИИ.

Workflow: ИИ — это неутомимый сеньор без контекста

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

Цикл на практике:

  1. Я формулирую фичу как аналитик: сущности, инварианты, граничные случаи, поведение на мобильном. Не «сделай оценки», а «вот модель голоса, вот веса, вот что происходит при отзыве оценки, вот кэп в сутки».

  2. Агент предлагает архитектуру и схему БД. Я задаю вопросы про компромиссы (индексы, N+1, миграции, обратная совместимость).

  3. Он пишет код и тесты, я гоняю, читаю диффы, ищу логические дыры, прошу переделать.

  4. Продуктовые и архитектурные решения — на человеке. У ИИ нет контекста про то, что важно пользователю.

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

Где нейросеть — гений, а где чуть не убила прод

Вот наши настоящие грабли, с которыми столкнулись

Периодически и сейчас вылетает на проде, но к счастью это происходит всё реже

Периодически и сейчас вылетает на проде, но к счастью это происходит всё реже

Грабля № 1: разница между dev и prod, которую не видно на локалке. Мы разрабатывали на SQLite, а прод — на MySQL. И поймали серию боевых «пятисоток» на ровном месте: MySQL строже относится к группировкам (only_full_group_by), а некоторые функции, которые в SQLite означают одно, в MySQL — совсем другое. Код был «правильный» — просто СУБД вели себя по‑разному. Вывод, который дорого достался: локальная среда должна повторять боевую. Мы перевели всю локальную разработку на MySQL 8 — и класс прод‑багов просто исчез. ИИ честно писал кросс‑совместимый SQL, когда его об этом просили; но додуматься до самого риска паритета сред должен был человек

Грабля № 2: одна миграция уронила все страницы статей. Мы поменяли формат одного поля в профиле (список ссылок из простых строк стал списком объектов). Обновили всех известных потребителей поля — кроме одного самописного куска, который делал parse_url() в расчёте на строку. В PHP parse_url(массив) бросает ошибку — и получили 500 на каждой странице записи, где был этот блок автора. Классика, на которой горят и живые команды: смена формата данных — это не локальная правка, а изменение контракта для всех, кто поле читает. Теперь любое такое изменение — только с полным аудитом потребителей и тестом на реальную страницу.

Грабля № 3: мобильная клавиатура и в целом мобильная версия — ад, который не полностью воспроизводится в браузере. Панель ввода комментария должна держаться над экранной клавиатурой. Звучит тривиально. На деле Chrome на Android, Яндекс‑браузер и Safari на iOS ведут себя по‑разному: у одного панель браузера снизу, у другого сверху, третий вообще игнорирует нужный механизм. Мы прошли через серию багов, которые видны только на живых устройствах — ни один автотест и ни один эмулятор их не ловит. Мораль: ИИ напишет тебе идеальный по логике код, но «проверь на трёх реальных телефонах» — по‑прежнему на человеке.

Сделать качественный текстовый редактор в МОБ оказалось одной из самых сложных задач даже для Клода.Особенно закрепить верхнее и нижнее меню в разных браузерах и устройствах  (на iPhone до сих пор есть нестыковки).

Сделать качественный текстовый редактор в МОБ оказалось одной из самых сложных задач даже для Клода.Особенно закрепить верхнее и нижнее меню в разных браузерах и устройствах (на iPhone до сих пор есть нестыковки).

Общий паттерн: нейросеть блестяще решает поставленную задачу, но не знает, какую задачу ставить. Увидеть системный риск, вспомнить про паритет сред, догадаться проверить на железе, решить продуктовый спор — это остаётся людьми. ИИ убрал из уравнения «писать код». Всё остальное в инженерии никуда не делось.

Что я понял про постройку продукта с ИИ

Если вы думаете сделать что‑то серьёзное таким способом — несколько честных выводов.

  1. Аналитик и тестировщик важнее кодера. Узкое место — не «написать код», а внятно сформулировать, что и зачем. Умение декомпозировать, продумать граничные случаи и правила — теперь главный навык. Кодинг стал дешёвым; мышление — нет.

  2. Без тестов вы слепы. Не пишете код сами — значит, обязаны заставлять ИИ покрывать всё тестами. Это ваши глаза и страховка. Лучше сразу на старте прописать это правило в документации Клода.

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

  4. Скорость — сумасшедшая, но контроль на вас. То, что заняло бы у небольшой команды годы и серьёзный бюджет, делается силами пары человек и подписки на ИИ. Но «быстро» без «в проде и не падает» ничего не стоит.

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

Автор: Dmitry9789

Источник