IKIGAI PROMOTION · гайды
Запросить AI-разборAI-разбор
Гайд · как у нас собирается сайт

Правило было записано. За 239 сессий оно сработало один раз

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

чтение 12 минутзамер 02.09.2026третий гайд серии
0 сессий под замером
0 раз сработало правило
0 фаз в конвейере
0/13 проверок гейта пройдено

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

На чём стоит этот документ

  1. Замеры по журналам сессий. Среда разработки ведёт их сама, мы их только читаем.
  2. Прогоны механики с кодами возврата. Не «мы проверили», а «команда вернула такой-то код», и код можно повторить.
  3. Два предыдущих гайда того же жанра: про агентов на сервере и про монтаж вертикального видео.

Чего мы не мерили. Экономического эффекта в деньгах и часах здесь нет. Механике один день, накопленной статистики не существует, а придумывать её мы не будем. Если увидите на такой странице «экономия 40 процентов», спросите, откуда цифра.

Почему правило не работало

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

Я проверил, как это исполняется. Не по ощущению, а по журналам: за 239 рабочих сессий роутер вызвался один раз. Детектор дефектов и скилл премиальной вёрстки не вызывались ни разу.

Причина не в лени и не в качестве инструментов. Инструмент подхватывается по описанию, вероятностно. Когда он не подхватился, страница всё равно выходит, и выглядит она ровно так же, как если бы он отработал. Провал неотличим от успеха изнутри.

Контраст, который всё объясняет: голос бренда за тот же период вызывался двадцать четыре раза. Разница одна: его вызывают по имени, а не надеются, что он подключится сам.

Что нужно до старта

Четыре части. Каждая закрывает то, что не может закрыть предыдущая.

ЧастьЧто делаетЧего не может
КанонОдин раз решает споры: шрифты, пунктуация, ритм фоновЗаставить себя прочитать
ПартитураКладёт порядок работы в контекст дословноЗаставить исполнить
ГейтНе пускает к файлам сайта, пока фаза не закрытаДоказать качество
ПерекличкаПоказывает, кто вступил, а кто промолчалОстановить в моменте

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

Восемь фаз

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

0 · Бриф и опись доказательстввладелец

Кому продаём, одно целевое действие, чем отличаемся. Отдельно опись: у каждого факта статус «есть на руках», «нужно запросить», «заблокировано», «неизвестно».

00-brief.json · 00-proof.md

1 · Направлениеавто, затем владелец

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

01-direction.md

2 · Блюпринт и канонвладелец

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

02-blueprint.md · 02-canon.lock.json

3 · Прототип без стилейвладелец

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

03-proto/страница.html

4 · Текстылинтер канона

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

04-copy/страница.md

5 · Вёрсткадетектор

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

05-build/страница.md

6 · Машинная приёмкавердикт

Одиннадцать требований качества меряются числом. Непроверенное не считается пройденным: это отдельное состояние, а не молчаливое согласие.

06-gate/страница.json

7 · Аудит и сдачавладелец

Пять независимых проверок ищут, где страница потеряет деньги. План правок показывается владельцу до того, как что-то исправлено.

07-audit/план.md · 08-verdict.json

Главное правило конвейера. Инструмент, вызванный без файла-результата, не считается вызванным. Файл на диске доказывает работу, рассказ не доказывает.

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

Разделение труда

Кто проверяет

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

Машина, числомЧеловек, глазамиНикто
Контраст текста по формуле, а не на глаз Не выглядит ли шаблонно Вкус
Переполнение на пяти размерах экрана обходом элементов Понятен ли смысл за пять секунд Уместность метафоры
Шрифты против списка разрешённых Уместна ли глубина или это украшательство Интересно ли читать
Скорость загрузки замером Звучит ли нашим голосом

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

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

Инструменты одной строкой

ИнструментЧто делает
РоутерВыбирает связку под тип страницы и порядок вызова
Подбор стиляДаёт палитру и структуру данными из базы, а не вкусом
Проверка на слопЛовит признаки машинной вёрстки: одинаковые карточки, фиолетовые градиенты
Приёмы агентстваВложенные оболочки, кнопка внутри кнопки, ритм пустого места
ДетекторПосле каждой правки проверяет разметку и пишет в журнал
Линтер канонаЛовит запрещённый шрифт, лишнее тире, одиночное название компании
ВерификаторПоказывает, кто вступил, а кто промолчал

Всего в реестре 512 записей. Работают не все, и это нормально: гайд как раз о том, как отличать работающее от числящегося.

Как запустить

Четыре команды. Первая открывает прогон, вторая ведёт по фазам, третья показывает перекличку, четвёртая проверяет саму защиту.

node tools/orchestra.mjs init <проект> --pages=index
/site <проект>
node tools/orchestra-check.mjs
node tools/orchestra-check.mjs --selftest

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

Что видит владелец

В конце сессии печатается перекличка: по фазам, с именами тех, кто не вступил.

Фаза 1  Направление
      web-design-router          ✅ вызван 1×
      ui-ux-pro-max              ✅ вызван 1×
      design-taste-frontend      ✅ вызван 1×
      high-end-visual-design     ❌ НЕ ВЫЗЫВАЛСЯ

ИТОГ: отыграно фаз 4 из 8.
Гейт: живой. Обходов: 0.

Галочка означает, что инструмент вызывался, и это видно в журнале, который ведёт не модель. Крестик означает, что его не было. Отдельная строка предупреждает, когда вызов есть, а файла-результата нет: инструмент подняли для галочки.

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

Если механика мешает

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

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

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

Важнее остального

Честные границы

Этот раздел идёт до предложения о работе, а не после.

Чего механика не делаетКак есть на самом деле
Не заставляет вызвать инструментОна не пускает к следующему шагу без него. Если очень захотеть, пройти мимо можно
Не видит команды в отдельном файлеГейт читает текст команды перед выполнением, а скрипт в файле для него один вызов
Не проверяет вкусМашина скажет, что контраст 3,1 при норме 4,5. Она не скажет, что страница скучная
Не защищена от собственного отказаПри сбое любая такая проверка пропускает работу дальше. Поэтому есть отдельный сигнал недостоверности и самопроверка
Не измеряла экономический эффектМеханике один день

Это защита от забывчивости, а не от намерения. Мы считаем, что так честнее, чем обещать невозможное.

Словарик

Канон
Файл, где записаны решения по спорам: какие шрифты, сколько тире, как чередуются фоны. Машина его читает, человек тоже.
Партитура
Порядок работы, который кладётся в контекст дословно, а не подхватывается по описанию.
Гейт
Проверка перед действием. Не пускает к файлам сайта, пока фаза не закрыта файлом-результатом.
Артефакт
Файл, который остаётся на диске после фазы. Доказательство работы.
Перекличка
Отчёт в конце сессии: кто вступил, кто промолчал, можно ли верить этому отчёту.

Источники

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

Разобрали и не взяли

Что смотрелиПочему не взяли
Готовый харнесс с очередями задачПостроен вокруг веток и запросов на слияние. У нас один человек и статические страницы: эта машинерия добавила бы участника, тянущего в свою сторону
Декларативные правила на PythonНа нашей машине Python подменён заглушкой, и правило числилось бы включённым, молча не работая. Ровно тот отказ, от которого уходим
Отдельный журнал применения инструментовДанные уже есть в другом месте. Новый журнал начал бы с нуля и снова показал бы пустоту как здоровье

Разберём вашу компанию так же

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

Сколько стоит99 000 ₸ для первых десяти компаний, дальше 149 000 ₸. Сумма засчитывается в следующую ступень, если решите продолжить в течение тридцати дней
Почему не бесплатноБесплатный разбор собирает тех, кому интересно посмотреть. Платный собирает тех, кто готов что-то менять
С чем сравнитьОдна проваленная попытка внедрить ИИ обходится компании в 20–50 млн ₸ вместе с потерянным временем руководителя. Инженер по машинному обучению в штат стоит 17–23 млн ₸ в год, и его ещё нужно найти

Ответим в течение рабочего дня. Разбор ведёт со-основатель IKIGAI PROMOTION Сергей Конев.