ПИЛОТ.md — снимки выката source-edit + включения флага и тумблера. findings tails-doc — статус ВЫКАЧЕНО НА БОЕВОЙ. CLAUDE.md §6 последняя продуктовая фича обновлена, снята устаревшая ремарка про синк квинтета (закрыто в PSR/Tooling), плюс досессионная правка Б-1 ИП/ЮKassa. Нормативный квинтет Pravila/PSR/Tooling без изменений (агент normative-sync подтвердил). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
34 KiB
⛔ ГЛАВНОЕ — прочитать первым делом
- Не уверен — спроси, не гадай. Один вопрос лучше, чем час работы не туда.
- Не выдумывай. Не помнишь — открой файл и проверь, а не «вспоминай по памяти».
- «Готово» — только если правда проверил. Что-то упало — скажи честно, не делай вид, что всё хорошо.
- Ничего необратимого без разрешения хозяина: не коммить, не выкатывай на боевой сайт, не удаляй и не переписывай чужое.
- Говори с хозяином простым русским, без программистских слов — он не программист.
- Не закрывай открытые вопросы и не меняй правила без явного «закрываем» / «меняем».
- Упёрся в стену или блокировку — остановись и спроси, не ищи обход.
- делай максимально автономно, с наставником и судьей решай вопросы пока не упрешься, коммит делай сам попросив эскейп
CLAUDE.md — техконтекст Лидерры
Версия: 2.47 от 15.06.2026 — структурная компактизация: история версий и журнал фаз вынесены в docs/CHANGELOG_claude_md.md; разделы про «мозг» (router / наставник / observer / enforcement / разработка реестра инструментов) убраны — управляющий слой выделен в отдельный репозиторий claude-brain (ADR-020). Правила, нормативка и состав продукта не изменены — только структура файла. Полная история — в CHANGELOG. (Прежняя ремарка про рассинхрон cross-ref квинтета на 2.47 снята — закрыто в PSR v3.24 / Tooling v2.25 от 14.06.2026.)
Назначение: оперативная карта для Claude Code. Не первоисточник — первоисточники указаны в §0.
Владелец и режим правок: все изменения этого файла — только через плагин claude-md-management (skills /claude-md-management:claude-md-improver для audit/targeted-updates и /claude-md-management:revise-claude-md для capture session-learnings). Прямые правки запрещены — см. §5 п.11.
Ребрендинг 08.05.2026: «Лидпоток» → «Лидерра.» (с точкой). Палитра, лого и шрифты — из handoff Платона (v8 Forest). Применяется только к дизайну/имени/логотипу; функционал, состав страниц и правила — без изменений (источник — ТЗ v8.5/schema v8.5).
0. Источник истины
| Тема | Документ (текущая версия) |
|---|---|
| Продуктовые правила работы Claude | docs/Pravila_raboty_Claude_v1_1.md (v1.44 от 14.06.2026) |
| Правила совместного использования плагинов Claude | docs/Plugin_stack_rules_v1.md (v3.24 от 14.06.2026) |
| Полный реестр позиций тулчейна (счётчики — канон в Прил. Н §0) | docs/Tooling_v8_3.md (Прил. Н v2.25 от 14.06.2026) |
| Главное ТЗ | docs/CRM_bp-gr_Инструкция_v8_5.md (v8.5 от 07.05.2026) |
| Схема БД | db/schema.sql — метрики и версия схемы канон в header файла + db/CHANGELOG_schema.md; CLAUDE.md числа не дублирует |
| Открытые вопросы | docs/Открытые_вопросы_v8_3.md (v1.83 от 13.05.2026) |
| Брендбук | liderra_v8_handoff/docs/BRANDBOOK_v2.md (v2 Forest от 07.05.2026) |
| Дизайн-handoff (токены, компоненты, экраны) | liderra_v8_handoff/docs/DEVELOPER_HANDOFF.md (v8 Forest от 07.05.2026) — только дизайн/токены; функционал — по ТЗ v8.5 |
| Анализ оригинала | docs/Analiz_originala_v8_3.md (Прил. М v1.1) |
| ТЗ рекламного лендинга | лендинг/TZ_landing_v1_0.md (v1.0 от 08.05.2026, ⏸ Б-1) |
| Состав архива | docs/README_АРХИВ_v8_5.md (v8.5 от 07.05.2026) |
Полная история версий этих документов — внутри самих документов; история правок CLAUDE.md — в docs/CHANGELOG_claude_md.md.
Этот файл — оперативная карта. При противоречии — приоритет у источников выше.
1. Приоритет правил при конфликте
0. Pravila §12 — Superpowers hard rule (инвокация skills первой) ← неотменяемо §9
↓
1. docs/Pravila_raboty_Claude_v1_1.md (продуктовые правила, утверждены заказчиком)
↓
2a. CLAUDE.md (общая оперативная карта)
2b. docs/Tooling_v8_3.md Прил. Н (детальный реестр инструментов)
↑ оба operational maps уровня 2; при конфликте между ними — приоритет CLAUDE.md
↓
3. docs/Plugin_stack_rules_v1.md (координация Superpowers + Frontend Design — gate, фазы, разделения)
↓
4. .claude/settings.json (хуки, permissions — исполняется средой)
↓
5. memory/*.md (динамическая память между сессиями)
↓
6. Прочие плагины (claude-md-management, ui-ux-pro-max и т.п.) — поведенческие подсказки
При любом противоречии — выбирается верхний уровень. §12 и §14 правил Claude — два explicit hard-правила в Pravila; §9 «Отступления» к ним не применяется (см. Pravila §12.4 и §14.5). Дополнительно §13.9 и §13.10 Pravila — transitive hard-rule через hard-link на нарушения PSR_v1 R10/R14 (см. Pravila §13.6 tier-таблицу). Plugin_stack_rules_v1 (уровень 3) — координирующий слой между двумя плагинами Claude; ниже Pravila/CLAUDE.md/Tooling, выше settings.json. Tooling Прил. Н (уровень 2b) — детальный реестр инструментов; alongside CLAUDE.md (оба operational maps), но при прямом конфликте между ними побеждает CLAUDE.md как корневая карта Claude Code.
Hard-rules вне §9 «Отступления» (Pravila): §12 (Superpowers — инвокация skill ПЕРВОЙ), §14 (Ruflo Queen routing — триггер queen/королева), §15 (параллельные сессии — 15.1 субагенты+git Sonnet/Opus only, 15.2 нормативка+pre-flight sync с 8-позиционным списком, 15.3 cross-refs). Эти три параграфа Pravila — explicit override-floor под §9; transitive hard-rule через §13 — координация Plugin_stack_rules_v1.
Scope этой цепочки: общая 7-уровневая файловая/слоевая иерархия (уровень 2 разделён на 2a CLAUDE.md + 2b Tooling — оба operational maps). Не дублирует:
- Pravila §0 — внутрипараграфный приоритет внутри Pravila (§1–§13).
- PSR_v1 R0.1 — scope головенства stack'а внутри уровней 4–6 этой цепочки.
- Tooling §7 — синхронная копия этой цепочки для Tooling-читателей.
2. Стек проекта
| Слой | Что |
|---|---|
| Backend | PHP 8.3 + Laravel 13 (мажор переоткрыт 08.05.2026 поздний вечер: при composer create-project laravel/laravel без ^11 Composer подтянул свежайшую 13.7; live-проверка совместимости — Boost v2.4.6, Larastan v3.9.6, Pest v4.7.0, IDE Helper v3.7.0, Pint v1.29 работают; принято заказчиком) |
| Frontend | Vue 3 + Vuetify 3 (НЕ Tailwind, НЕ Inertia, НЕ Livewire, НЕ Filament) |
| БД | PostgreSQL 16. Метрики схемы (таблицы / партиции / индексы / RLS-политики / функции / триггеры) — канон в header db/schema.sql + db/CHANGELOG_schema.md; CLAUDE.md числа не дублирует. 5 ролей БД на prod через db/00_create_roles.sql (crm_supplier_worker BYPASSRLS — Plan 3 sharing-flow + Plan 4 джобы); на dev — postgres superuser. |
| Кэш / очереди | Redis 7 |
| Pooler | PgBouncer (transaction pooling) |
| Облако | Yandex Cloud, регион ru-central1 (Москва) |
| SSO админов | Yandex 360 |
| Unisender Go (SMTP-relay) | |
| Sentry | self-hosted в Yandex Cloud |
| Helpdesk | JivoSite |
Шрифты: Inter (UI, axis opsz 14..32), JetBrains Mono (numerics с tnum, код). Иконки: Lucide. Палитра v8 Forest: Teal #0F6E56 (primary, неоспариваемый), #F6F3EC warm ivory (page bg), #012019 теало-нуар (sidebar). 14 OKLCH-статусов в BRANDBOOK_v2 §3.6 — палитра используется, но мапить на 14 slug'ов из db/schema.sql:2076 (источник истины для статусов воронки — schema/ТЗ §6.4, не handoff). A11y: WCAG 2.1 AA. Animation default stack (рекомендация, не hard-rule): Vue native <Transition> / <TransitionGroup> + Vuetify transitions (v-fade, v-slide-y, v-scale, v-expand, v-dialog-transition) + CSS @keyframes + prefers-reduced-motion + View Transitions API (Chrome 111+ / Safari 18+). Motion-runtime библиотеки (motion-v, gsap, anime.js, lottie-web, popmotion, @motionone/dom) — разрешены к установке без обоснования. framer-motion — technical block (React-only peerDep на react+react-dom, runtime crash в Vue физически), не regulatory rule — см. Tooling §9.2 technical guidance.
3. Карта инструментов — «когда что использовать»
Полный реестр с командами установки и конфликтами — docs/Tooling_v8_3.md. Здесь — оперативная карта для частых задач.
3.1. Фаза 0 — документация (9 активных)
| # | Задача | Инструмент | Команда |
|---|---|---|---|
| 1 | заменён #10 Boost (см. §3.2) | ||
| 2 | Открыть/проверить web/*.html |
Playwright MCP | через MCP |
| 3 | Issues / PR | GitHub MCP | через MCP |
| 4 | Линт .md |
markdownlint-cli2 | npm run lint:md |
| 5 | Орфография .md |
cspell | npm run spell |
| 6 | Проверка ссылок в .md |
lychee | npm run links |
| 7 | Линт CSS в прототипах | Stylelint | npm run lint:css |
| 8 | Поиск секретов в diff | gitleaks | pre-commit hook |
| 9 | A11y проверка прототипов | Pa11y | npm run a11y |
3.2. Фаза 1 — старт Laravel (+8 нетто, итого 17)
| # | Задача | Инструмент | Команда |
|---|---|---|---|
| 10 | SQL / Eloquent / docs Laravel | Laravel Boost (заменяет PG MCP) | через MCP-tools Boost'а |
| 11 | Code style PHP | Laravel Pint | composer pint |
| 12 | Статанализ PHP | Larastan | composer stan (CI) |
| 13 | CVE на install | Roave/SecurityAdvisories | автоматически на composer install |
| 14 | IDE-stubs PHP | Laravel IDE Helper | php artisan ide-helper:generate |
| 15 | Линт миграций PostgreSQL | squawk | в pre-commit для database/migrations/*.php |
| 16 | Форматирование SQL | pgFormatter | хук на правке db/schema.sql |
| 17 | Партиционирование PG | pg_partman | расширение БД |
| 18 | Тесты PHP | Pest 4 | composer test |
3.3. Фаза 2 — старт frontend (+7, итого 24)
| # | Задача | Инструмент | Команда |
|---|---|---|---|
| 19 | Поведение Claude (TDD/debug/review/plans/parallel) | Superpowers v5.1.0 — все 14 skills | автоматически (override §2.2/§4.5/§8.4 разрешён, см. Pravila §11) + §12 hard rule: skill инвокируется ПЕРВЫМ для подходящих задач (карта §12.2 правил Claude); координация с #30 Frontend Design — см. docs/Plugin_stack_rules_v1.md |
| 20 | Vue language server | Volar | VSCode-расширение |
| 21 | Type-check Vue | vue-tsc | npm run type-check (CI only) |
| 22 | Линт + форматтер JS/Vue (связка) | ESLint + Prettier + config-prettier + plugin-vue | npm run lint:vue, npm run format |
| 23 | Тесты Vue | Vitest | npm run test:vue |
| 24 | Каталог компонентов | Histoire (НЕ Storybook) | npm run story |
| 30 | Доменная база UI (компоненты, паттерны, состояния, a11y-принципы) | Frontend Design plugin (Anthropic, paired со Superpowers) | автоматически через ~/.claude/settings.json; обязательный стек-фильтр Vue+Vuetify (см. Plugin_stack_rules_v1.md Правило 6) |
Off-phase инструменты (#31–#89, 20 подкатегорий) — полный реестр, команды, конфликты и счётчики — канон в Tooling Прил. Н §0. Routing-аид «триггер задачи → off-phase узел» + канонические связки — docs/routing-off-phase.md. Ключевые: #33 claude-md-management (обязательный канал правок CLAUDE.md, §5 п.10), #34 Sentry MCP / #35 Redis MCP (READ-ONLY отладка прод-runtime), #60 context7 (актуальная документация библиотек), #86 graphifyy (граф проекта, §5 п.14), #87–89 perplexity/exa/firecrawl (веб-разведка, READ-ONLY).
3.4. Фаза 3 — pre-production (+5, итого 29)
| # | Задача | Инструмент | Команда |
|---|---|---|---|
| 25 | SAST | Semgrep + Semgrep MCP | npm run sast (CI) |
| 26 | Скан Docker-образов | Trivy | в CI перед push в Yandex Container Registry |
| 27 | CVE-PR авто | GitHub Dependabot | .github/dependabot.yml |
| 28 | Audit-логи PostgreSQL | pg_audit | ✅ на проде liderra.ru (22.05.2026); pgaudit.log='ddl, role, write', log_parameter=off — setup |
| 29 | Маскирование ПДн в дампах | pg_anonymizer | ✅ на проде liderra.ru (22.05.2026); anon 3.0.13/Rust, загрузка по требованию LOAD 'anon' — setup |
Нумерация: #1–#29 — phase-slot фаз 0–3; #30 Frontend Design — phase-2 (paired stack); #31–#89 — off-phase инструменты (полный реестр и счётчики — канон в Tooling Прил. Н §0).
3.5. Заметки к .claude/settings.json
- Permissions: список allow/deny — для фазы 0 (документация + HTML-прототипы). При переходе в фазу 1 добавить
Bash(composer:*),Bash(php artisan:*). - Hooks: один хук на авто-fix Markdown через
markdownlint-cli2(исключая корневойCLAUDE.md, чтобы не зацикливаться). Pre-commit (gitleaks, link-check) — не здесь, отдельно через git hooks (lefthook). - Источник истины: см. docs/Tooling_v8_3.md Прил. Н §8 — source of truth для всех конфигов проекта.
$schema: канонический URL —https://json.schemastore.org/claude-code-settings.json(только этот валиден для Claude Code; кастомные_comments/commentв файле — нельзя, схема их отвергает).
3.6. Project-local AI-агенты
В .claude/agents/ лежат 4 узко-специализированных агента, которым контроллер ОБЯЗАН делегировать соответствующие классы задач (контракт — Pravila §2.4). Полный perimeter триггеров — в description-frontmatter каждого файла.
| Агент | Когда зовём |
|---|---|
normative-sync |
После закрытия крупной интеграции / принятого ADR — синк нормативных файлов |
prod-deploy-validator |
Перед любым выкатом на боевой liderra.ru — pre-flight проверки, GO/NO-GO вердикт |
pest-parallel-debugger |
Диагностика Pest 4 --parallel failures |
rls-reviewer |
RLS-compliance review при правке db/schema.sql или db/migrations/ |
4. Команды быстрого доступа
# Документация (фаза 0, активно сейчас)
npm run lint:md # markdownlint
npm run spell # cspell
npm run links # lychee
npm run a11y # Pa11y
npm run check:docs # все 4 выше параллельно
# Безопасность (Windows: бинарь в bin/, не в PATH; Linux/Mac CI ставят gitleaks через brew/apt)
./bin/gitleaks.exe detect # ручной запуск
./bin/gitleaks.exe protect --staged # в pre-commit (через lefthook)
# Backend (фаза 1+)
composer pint # форматтер
composer stan # Larastan
composer test # Pest или PHPUnit
php artisan boost:mcp # запуск MCP-сервера Boost вручную
# Frontend (фаза 2+)
npm run lint:vue
npm run type-check
npm run test:vue
npm run story # Histoire
# Pre-prod (фаза 3+)
npm run sast # Semgrep
trivy image liderra:latest
5. Что НЕ делать
-
Не подключать Boost к production DB.
.env.productionне должен попадать в локальный Boost-конфиг. -
Не использовать Inertia / Livewire / Tailwind / Filament / Flux UI / Nova / Folio / Volt / Wayfinder guidelines Boost'а — у нас Vue + Vuetify.
-
Не запускать a11y через Lighthouse — единственный источник истины Pa11y.
-
Не помещать ПДн / токены / API-ключи в коммиты. Правило §5.2 правил Claude. Защита — gitleaks в pre-commit.
-
Расширенный пул UI-инструментов — координируется через PSR_v1 v2.0+. Кратко: paired-stack ядро (Superpowers = процесс / Frontend Design = решатель UI), плюс два инструмента в роли материала, не решателя: UPM (резерв-библиотека, R10.1/R11.5/R14.3) и 21st Magic MCP (генератор шаблонов, R10.1/R14.4). Все четыре проходят R6.0 фильтр стека (срезать React/Tailwind/shadcn/JSX → Vue 3 + Vuetify 3) и R6.1 hard-override Forest (палитра/шрифты/иконки/aesthetic — Brandbook, не плагины). UPM и 21st не параллельно с FD и друг с другом (R14.5). A11y технический — за Pa11y (п.3); плагины покрывают только a11y-принципы. Детали — PSR_v1 R6/R10/R11/R14.
-
Не ставить два инструмента на одну задачу — список 10+ запрещённых дублей в docs/Tooling_v8_3.md §9.
-
Не редактировать этот
CLAUDE.mdбез обновления docs/Pravila_raboty_Claude_v1_1.md и docs/Tooling_v8_3.md — иначе три источника разойдутся (применяется ВНУТРИ flow п.10; пропуск синхронизации — отдельная ошибка даже при работающем плагине). -
Не править
db/schema.sqlбез записи в db/CHANGELOG_schema.md — правило §4.2 правил Claude. -
Не закрывать открытые вопросы (
Биз-*,CTO-*,Ю-*,Диз-*,DO-*,OPEN-*) без явного «закрываем» от заказчика — §2.2 правил Claude. -
Не править этот
CLAUDE.mdнапрямую — только через плагинclaude-md-management(anthropics/claude-plugins-officialmarketplace). Два входа:/claude-md-management:claude-md-improver— audit + targeted updates (структурные изменения, добавление/удаление секций, правки версии в шапке, правки правил §5)./claude-md-management:revise-claude-md— захват learnings из текущей сессии (новые quirks, команды, паттерны → CLAUDE.md).
Плагин — единственный интерфейс ведения файла. Прямые
Edit/WriteпоCLAUDE.mdбез вызова skill'а — нарушение. Внутри flow плагина продолжают действовать пп.7 (синхронизация Pravila + Tooling) и общие §4 правил Claude. -
Не пропускать инвокацию Superpowers skill'а для задачи, попадающей под карту §12.2 правил Claude (TDD, debug, plan, parallel, review, verify, brainstorm, worktree, finishing PR, subagent, writing-skills). Это hard rule (§12 правил Claude), §9 «Отступления» к нему не применяется. Рационализация «эта задача проще» / «сейчас быстрее без skill'а» — нарушение того же уровня, что игнорирование §5 ПДн. Список exclusions — Pravila §12.3 (Single Source of Truth). Запрос заказчика «не используй superpowers сейчас» — единственная отмена, и только на текущее действие. См. Pravila §12.4.
-
Резерв. Был «не устанавливать motion runtime библиотеки без прохождения R15.2 PSR_v1». Снят 12.05.2026. Motion-runtime библиотеки разрешены без обоснования;
framer-motionостаётся technical block (React-only peerDep). -
Не запрашивать override
ремонт инфраструктурыдля docs-only коммитов/пушей. Хукenforce-verify-before-pushсам пропускает изменения, где все staged/unpushed файлы —.md. Для смешанных/кодовых коммитов override остаётся. NB: «docs-only» считается строго по.md-суффиксу — добавление любого конфиг-файла (cspell-words.txt,package.jsonи т.п.) рядом со spec.md делает diff смешанным. -
Перед открытым codebase-вопросом — сначала
/graphify query, потом Read/Grep/Glob. Граф проекта (graphify #86, ADR-017) покрывает docs/ + .claude/ + app/. Применяется к структурным/cross-layer вопросам («где скил X используется», «куда тянется зависимость от Y»). Не применяется к известному пути файла (→ Read), узкому regex-поиску (→ Grep), операциям записи или сильно устаревшему графу. -
Memory writes требуют
coverage: direct:memory-syncв свежем turn'е. Хукenforce-memory-coverageне принимает chain-каналы (считает stale). Альтернатива — override-фразаmemory dumpв промпте.
6. Текущее состояние продукта
Фаза: post-MVP, продукт работает на боевом liderra.ru. Фазы тулчейна 0/1/2 закрыты, идёт фаза 3 (pre-production).
Управляющий слой («мозг») — router / наставник / observer / enforcement / разработка реестра инструментов — выделен в отдельный репозиторий claude-brain (ADR-020). В этом репозитории остаётся продукт Лидерры + замороженная рабочая копия рантайм-хуков: стена «роутер-наставник» и enforcement-хуки продолжают действовать здесь. Как с ними работать — память сессии + docs/superpowers/router-mentor-wall-GUIDE.md.
Живые снимки состояния (читать в начале сессии; волатильное перепроверять реальной командой):
ЭТАЛОН.md(корень репо) — локальная dev-версия (git/окружение/временное/демо).ПИЛОТ.md(корень репо) — боевая интернет-версия liderra.ru (доступ/HTTPS/сервер/БД/безопасность/YC Lockbox).
Последняя продуктовая фича: разблокировка смены источника проекта без потери лидов — матч поставщиковых лидов по слепку project_routing_snapshots (флаг routing_match_by_snapshot), Эпик 4 онлайн-заморозка 18:00→00:00 + FlushDeferredOnlineSyncJob (00:05 МСК), экран «Вечерняя заливка» (supplier_sync_runs) и дружелюбный тумблер управления флагом в админке «Интеграция с поставщиком». На проде liderra.ru (26.06.2026), флаг ВКЛЮЧЁН, идёт суточное наблюдение. Откат — тумблер в ВЫКЛ.
Полный журнал фаз и работ (что и когда делалось, включая историю «мозга») — в docs/CHANGELOG_claude_md.md.
Б-1 (юр. лицо) — закрыт: ИП зарегистрирован (НЕ ООО), договор с ЮKassa готов — осталось только подписать; после подписи включается онлайн-оплата (флаг billing_yookassa_enabled). Зависевшие Диз-3, DO-2, DO-4 — разблокированы. Источник истины — память project-legal-entity-ip-yookassa-2026-06-25 (25.06.2026).
7. Laravel Boost — фактическая установка 08.05.2026 (✅ применено)
Wizard php artisan boost:install сломан в обоих режимах на этой машине — кириллица в пути крашит интерактив laravel/prompts, --no-interaction падает в баге L13 ConfiguresPrompts::multiselectFallback. Установка выполнена вручную (коммит e04f53b). Подробности — memory feedback_environment.md п.26. На Linux/macOS-машинах с ASCII-путями wizard работает нормально.
Что сделано вручную (вместо wizard'а):
composer require laravel/boost --dev— установлен Boost v2.4.6 + транзитивы (laravel/mcp v0.7.0, laravel/roster v0.5.1, symfony/yaml v7.4).- Этот
CLAUDE.mdне тронут — Boost при manual setup ничего не пишет вapp/CLAUDE.md(и тем более в корневой). Корневой остаётся источником истины. .mcp.json(корень) — добавлен блокlaravel-boost(command=php, args=[app/artisan,boost:mcp]) рядом сplaywright/github. PostgreSQL MCP убран ещё в фазе 0 (_comment_postgres).- «Отключение guidelines» — избыточно. Boost через
laravel/rosterauto-detect видит установленные пакеты в composer.lock и серверит только релевантные. Inertia, Livewire, Tailwind, Filament, Flux UI, Nova, Folio, Volt, Wayfinder, Sail, PHPUnit — у нас не установлены, Roster их не серверит.boost.jsonминимален: 3 ключа (agents=[claude_code],guidelines=true,mcp=true). - Кастомный Vuetify 3 guideline —
app/.ai/guidelines/vuetify.md(путь поLaravel\Boost\Install\GuidelineComposer::userGuidelineDir = '.ai/guidelines'). .mcp.jsonиapp/boost.json— оба в репозитории.- Pest 4 активен — Roster видит его, серверит Pest guidelines. PHPUnit убран из direct deps в коммите
30f0335. - Production DB — не подключать к Boost.
app/.env.productionне должен попадать в локальный конфиг.
8. Self-review триггеры
После массивных правок (≥3 групп патчей) — обязательно (§4.6 правил Claude):
| Файл | Что проверять |
|---|---|
db/schema.sql |
0 orphan-FK, целостность RLS, 0 дубликатов CREATE TABLE; метрики (таблицы / индексы / RLS / функции / триггеры) сверять с header db/schema.sql + db/CHANGELOG_schema.md — канон, не с числом в CLAUDE.md |
narrative .md |
Версии в шапке/колонтитуле, 0 «готовится»/«TBD», кросс-ссылки на актуальные имена файлов |
| Прил. А–Н | Версия совпадает с narrative; все упомянутые подразделы существуют |
| Прил. Н (Tooling — реестр инструментов) | Счётчики — канон Tooling Прил. Н §0; 0 дублей; синхронность Tooling ↔ CLAUDE.md по §0 cross-refs |
Результат — кратким блоком в конце ответа.
9. История версий
Полная история — docs/CHANGELOG_claude_md.md (туда же 15.06.2026 дописан полный снимок прежнего CLAUDE.md перед компактизацией — без потерь). Здесь — последняя запись:
- v2.47 от 15.06.2026 — структурная компактизация — история версий (v1.80…v2.46), цепочки «наследие» (строка версии + ячейки §0) и журнал фаз (§6) вынесены в CHANGELOG; вырезаны разделы про «мозг» (router / наставник / observer / enforcement / разработка реестра инструментов) — управляющий слой выделен в отдельный репозиторий claude-brain (ADR-020). Правила (§1, §5), нормативка (§0 квинтет, версии не тронуты) и состав продукта (§2, §7) не изменены — только структура. Файл сокращён с 347 КБ (точный новый размер — командой
wc -cпосле применения). Cross-ref версии CLAUDE.md в Pravila/PSR/Tooling указывают 2.46 — синхронизация квинтета на 2.47 — отдельный follow-up. Черезclaude-md-management.