Перейти к содержанию

11 · Failure Modes · case studies

Зачем этот файл

06-anti-patterns.md отвечает на вопрос «что не делать» — это правила в формате ❌/✅.

Этот файл отвечает на вопрос «почему правила существуют» — каждое правило родилось из конкретного провала. Без контекста — правило выглядит как абстрактный запрет. С контекстом — становится понятен корень и edge cases.

Cold-start ценность: новая Claude-сессия после чтения этого файла понимает не «что нельзя», а как мыслить чтобы не наступить заново. Истории учат глубже чем правила.

Каждый case = час-день потерянного времени CEO + повреждение доверия. Стоимость одного case >> стоимость 7 минут чтения.


5 системных принципов (объединяют всё)

Прежде чем разбирать конкретные case'ы — корни. Все провалы ниже — частные проявления этих 5.

1. Визуальная проверка не заменяется прокси

curl / grep / getComputedStyle через JS / файловый diff — это прокси, не визуальная проверка. Браузер кэширует, computed values могут быть валидны при сломанном визуале (warm dark rgb(14,13,11) читается computed правильно, но visually выглядит cream).

Chrome MCP screenshot реального URL — обязателен ДО фразы «посмотри / открой».

2. Mental model не переносится автоматически

Light theme v2 фон #FAFAF7 (warm bone) — для web context. Для print/PDF cover фон #FFFFFF (pure white). Один и тот же brand, разные контексты.

Перед применением mental model — спросить: «это тот же контекст где модель работала?»

3. Эталоны читаются как файлы целиком

grep пропускает cross-cutting bugs. Прецедент 2026-05-07: системный bug --header-bg cream ломал 6 экранов — grep по одному селектору не показал. Полное чтение master CSS показало бы.

Открыть эталонный файл целиком перед правкой. 1-2 минуты чтения окупаются.

4. Апрув CEO до push, не после

Push до апрува = публичный артефакт = откат через git revert = двойная работа + раздражение.

Накапливать в working tree, ждать явный CEO trigger («апрув» / «фиксируем» / «commit X»).

5. Стиль общения = часть качества

Англицизмы (sprint/scope/refactor/MVP) → CEO «80% не понимаю». Сухой список А/Б/В без рекомендации → CEO «я полностью доверяю твоим рекомендациям». Это не косметика — это передача мысли.

Перед каждой отправкой — прочитать текст глазами CEO.


Хронология провалов

2026-05-04 · Modal v4.2.6 — 11 правил

Что произошло. Делал модалы по «вибрационному» подходу: Linear/Stripe-style references, без чтения эталонов как файлов. border-radius сломал canonical, padding изменён без причины, body text center на длинной форме.

Реакция CEO. «Провал».

Root cause. Применил mental model «Linear/Stripe = качественный UX» к GOLDJAXE контексту. Игнорировал что у GOLDJAXE свой канон (square brackets, gold accents, JBM/Space Mono mix).

Урок. 11 правил v4.2.8 (зафиксированы в 06 §Группа A): 1. First read эталоны как ФАЙЛЫ 2. НЕ Linear/Stripe — у GOLDJAXE свой канон 3. Headline center, body left 4. Кнопки min-width 5. Цены strong амбер 6. Canonical extends 7. Body min 14px 8. Async closing 9. Апрув CEO до push 10. CSS многострочный комментарий закрывать */ ОДИН раз 11. Visual screenshot перед показом CEO

Связанные принципы. №2 (mental model), №3 (эталоны).

Re-entry. «прочти контекст design-lessons»


2026-05-04 · Англицизмы

Что произошло. Ответы CEO с массой английских терминов: sprint/scope/refactor/boilerplate/MVP/hero/viewport/anti-pattern/LTV/tier.

Реакция CEO (раздражённо). «80% не понимаю».

Root cause. Технический жаргон комфортен для Claude — это исходная модель тренировки. CEO не из tech-индустрии, не обязан знать жаргон.

Урок. Запрет на англицизмы в общении. Карта замен в references/anglicisms-ru.md скила goldjaxe-designer (для UI текста — обязательный перевод; branding и технические маркеры остаются: GOLDJAXE / L0-L3 / MASTER KEY / WCAG).

Промпт-аудит перед показом: «Проверь экран X на англицизмы».

Связанные принципы. №5 (стиль = часть качества).

Re-entry. «прочти контекст no-anglicisms»


2026-05-04 · gate-admin/dashboard-v2 пауза

Что произошло. 4 итерации dashboard-v2.html — все 4 не сошлись с CEO.

Реакция CEO. «Не в состоянии сделать дизайн админ панели».

Root cause. Продолжал угадывать после 2-й итерации вместо паузы и переговоров о vision. Каждая итерация удалялась всё дальше от того что CEO держал в голове, без явного якоря.

Урок. - При 2+ итерациях не сходящихся с CEO — пауза - Переговоры о vision: «что для тебя выглядит правильно? покажи референс или опиши словами» - Только после alignment — следующая итерация - Sidebar Б stripe-style принят как canonical админки (settings/billing) — другой паттерн, не путать

Связанные принципы. №2 (mental model — у CEO своя в голове, а я угадывал).

Re-entry. «прочти контекст gate-admin-paused»


2026-05-06 · Сухой список вариантов А/Б/В

Что произошло. Давал CEO список А/Б/В без рекомендации, как голосование.

Реакция CEO. «Я полностью доверяю твоим рекомендациям».

Root cause. Защитное поведение — «пусть CEO решит, я не возьму на себя ответственность». Но CEO ожидает Senior judgment, не выбор из меню.

Урок. ВСЕГДА: 1. Рекомендация first 2. 2-4 причины 3. Отвергнутые варианты с объяснением 4. Предупреждения / outs

Рекомендация: Вариант A.

Почему:
- ...
- ...

Отвергнуто:
| Вариант | Почему не |
|---|---|
| B | ... |

▸ Призма: Ф[N] — [тезис]

Связанные принципы. №5 (стиль = часть качества).

Re-entry. «прочти контекст recommend-with-reasoning»


2026-05-07 · Junior-уровень аудита (grep + memory only)

Что произошло. Аудит 24 экранов syndicate/gate-admin/.ai через 3 параллельных subagent + grep по memory. Без визуального обхода в браузере.

Пропущено в production: - System-wide bug --header-bg cream ломающий 6 экранов - 3 утечки имени Юлии (бывший сотрудник 30.04) - IP-leak в topic.html - 600+ строк дубль-CSS между 7 экранами - bump query 0/24 экранов - i18n coverage 11% (94/830 keys) - AI-Diagnostic не встроен на marketing landing

Реакция CEO. «Опять тупишь? почему я должен тыкать тебя как джуна?»

Root cause. Делегировал визуальную проверку subagent'ам которые работали по тексту, не визуально. Считал что grep + memory покрывают cross-cutting bugs — это работает только для локальных регрессий, не для master CSS.

Урок. - Grep + memory only = junior. Запрещено как единственный метод - Visual verification через Chrome MCP обязательна для каждого экрана - В обеих темах (light + dark) если касается theme - В обоих языках (RU + EN) если касается i18n - Cross-cutting bugs ловятся только при системном обходе - Subagent'ы не заменяют визуального обхода — они помогают, не заменяют

Связанные принципы. №1 (визуальная проверка), №3 (эталоны целиком).

Re-entry. «прочти контекст senior-designer» / «прочти контекст audit-3sections»


2026-05-07 · Verify-before-show (Waterfox cache)

Что произошло. Light theme overrides на syndicate/topic.html не применились (Waterfox aggressive cache). Я дважды просил CEO «открой URL» без визуального self-check через Chrome MCP.

Реакция CEO. «Больше ни одного раза когда я трачу время впустую».

Root cause. Доверял computed-style и file edit как proof. Не учитывал что browser cache (Waterfox/Chrome) держит старый CSS даже после reload без bump query. CEO видит старую версию, я — новую (потому что DevTools Network бы показал актуально).

Урок. - Curl response, grep HTML, getComputedStyle JS — это прокси, не визуальная проверка - Chrome MCP screenshot реального URL обязателен ДО фразы «посмотри» - Если Chrome MCP не подключён — подключить или сказать прямо «не могу визуально, прошу твоей проверки» - После каждого CSS edit — bump ?v=X.Y.Z query на всех HTML которые consumes этот CSS - Если CEO видит «ничего не поменялось» — моя проверка была недостаточна, не оправдываться кэшем

Связанные принципы. №1 (визуальная проверка), №4 (push без апрува = откат, но здесь — push без proof = false claim).

Re-entry. «прочти контекст verify-before-show»


2026-05-07 · Letterhead формы

Что произошло. Делал 4 letterhead формы (RU/UAE × A/B варианты) с нуля без референсов CEO. Все 4 не подошли.

Реакция CEO. «Формы делать не умеешь, потратил полдня моего времени».

Root cause. Letterhead и формальные документы — узкая зона где у CEO в голове конкретный канон (юридический / культурный / эстетический). «Креатив» в этой зоне = угадывание, не дизайн. Я угадывал, не запрашивал референсы.

Урок. - Letterhead, юр.формы, бланки — без референсов CEO не делать - Подход: 1. Запросить готовые референсы от CEO 2. Точечно править 3. НЕ переписывать архитектуру с нуля - Это узкая зона где креатив = ошибка. Канон CEO видит, я угадывать не умею

Связанные принципы. №2 (mental model — здесь модель CEO неявная, нужно её достать).

Re-entry. «прочти контекст letterhead-формы»


2026-05-07 · Document System cover redo

Что произошло. Cover для документа сделал с off-white фоном #FAFAF7. Переиспользовал mental model Light theme v2.

Реакция CEO. Резкий отказ, требование точных canonical params.

Root cause. Применил web mental model к print/PDF контексту автоматически. Web Light theme v2 = warm #FAFAF7 чтобы избежать stark white surface fatigue при долгом use. Print/PDF cover = pure #FFFFFF потому что это эталон бумаги, бумага не «утомляет».

Урок (зафиксирован в memory feedback_document_system_canonical_locked): - Pure white #FFFFFF для cover (НЕ off-white, НЕ cream, НЕ #FAFAF7) - Space Grotesk Bold 36pt — cover heading (НЕ Inter) - Space Mono Bold 9pt 0.06em — meta labels - ORACLE footer обязательно - A asymmetric + B classical letterheads — два варианта

Связанные принципы. №2 (mental model — Web ≠ Print, разные контексты).

Re-entry. «прочти контекст document-system-canonical»


2026-05-07 · Chromium PDF generation quirks

Что произошло. PDF generation через chromium с display_header_footer:True + headerTemplate/footerTemplate. Empty headerTemplate триггерил chromium default («page X of Y» в стандартном стиле), что ломало брендирование.

Root cause. Доверял туториалам без проверки. Chromium V100+ изменил поведение @page и template rendering — старая инфа в Stack Overflow / блогах врёт.

3 подвоха chromium: 1. @page { @bottom-left } РАБОТАЮТ в V100+ (старые туториалы говорят «не работают») 2. Empty headerTemplate триггерит chromium default — нельзя оставлять пустым, нужно <div style='display:none'></div> 3. counter(page) в position:fixed не работает

Canonical pipeline: - display_header_footer: False в Chrome - Pagination через PyMuPDF post-processing - PDF verify через PyMuPDF page-level rendering обязательно (qlmanage показывает только cover)

Урок. Browser PDF != Print PDF. Для production документов — PyMuPDF, не chromium native.

Связанные принципы. №1 (визуальная проверка — qlmanage недостаточно для multi-page), №2 (mental model — браузерный PDF не эквивалентен print PDF).

Re-entry. «прочти контекст chromium-pdf-quirks»


Индекс по типам провалов

Для quick-lookup при планировании:

Type A · Визуальная проверка (принцип №1)

  • 2026-05-07 · Junior audit grep+memory
  • 2026-05-07 · Verify-before-show Waterfox cache
  • 2026-05-07 · Chromium PDF (qlmanage недостаточно)

Type B · Mental model перенос (принцип №2)

  • 2026-05-04 · Modal v4.2.6 (Linear/Stripe → GOLDJAXE)
  • 2026-05-04 · gate-admin/dashboard-v2 (угадывание vs vision CEO)
  • 2026-05-07 · Letterhead формы (без референсов CEO)
  • 2026-05-07 · Document cover (Web Light → Print)
  • 2026-05-07 · Chromium PDF (Browser PDF → Print PDF)

Type C · Эталоны не прочитаны целиком (принцип №3)

  • 2026-05-04 · Modal v4.2.6
  • 2026-05-07 · Junior audit (cross-cutting --header-bg cream)

Type D · Push до апрува (принцип №4)

  • См. 06 §Группа C · Workflow anti-patterns §1 Self-approve
  • См. 07-workflow.md §CEO approval gate

Type E · Стиль общения (принцип №5)

  • 2026-05-04 · Англицизмы
  • 2026-05-06 · Сухой список А/Б/В

Применение в новой Claude-сессии

Перед началом дизайн-работы

  1. Прочитать SEMANTIC-CORE.md (10 мин)
  2. Прочитать этот файл (~7 мин)
  3. Прочитать 06-anti-patterns.md (~10 мин · если не читал недавно)
  4. По теме задачи — соответствующий playbook раздел
  5. Старт работы с активной памятью о принципах №1-№5

При сомнении «можно ли срезать угол»

Спросить себя: «Какой из 5 принципов я нарушаю если срезаю?» Если ответ есть — нельзя.

При планировании action

Каждый шаг проверить против Type A-E. Если шаг попадает в риск-зону: - Type A → запланировать Chrome MCP проверку - Type B → запросить референс CEO - Type C → запланировать чтение эталонного файла целиком - Type D → накапливать в working tree, не push - Type E → промпт-аудит перед отправкой

При новом провале

Добавить case в этот файл: - Дата - Что произошло (детально) - Реакция CEO (цитата если есть) - Root cause (что именно сорвалось — какой из 5 принципов) - Урок (правило в формате 06) - Связанные принципы (№1-№5) - Re-entry phrase (для memory)

После добавления: - Обновить 06-anti-patterns.md если нужно новое правило - Обновить 10-reentry-anchors.md если новый триггер - Bump VERSION + CHANGELOG


Когда читать этот файл

  • Cold start новой Claude-сессии — обязательно после SEMANTIC-CORE.md
  • Перед большим дизайн-проектом — освежить root causes
  • После любого факапа — добавить новый case в этот файл (превентивно для следующего раза)
  • Onboarding нового подрядчика — обязательно вместе с 06-anti-patterns.md (правила без историй непонятны)

Связанные документы

  • 06-anti-patterns.md — правила в формате ❌/✅ (что не делать)
  • 09-audit-checklist.md — методология как делать правильно
  • 07-workflow.md — CEO approval gate + Versioning
  • 10-reentry-anchors.md — карта memory триггеров
  • .claude/skills/goldjaxe-designer/references/failure-modes.md — компактная версия для активации скила