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-сессии¶
Перед началом дизайн-работы¶
- Прочитать
SEMANTIC-CORE.md(10 мин) - Прочитать этот файл (~7 мин)
- Прочитать
06-anti-patterns.md(~10 мин · если не читал недавно) - По теме задачи — соответствующий playbook раздел
- Старт работы с активной памятью о принципах №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 + Versioning10-reentry-anchors.md— карта memory триггеров.claude/skills/goldjaxe-designer/references/failure-modes.md— компактная версия для активации скила