Files
portal/CLAUDE.md
T
Дмитрий fbf982e12c
Accessibility (Pa11y live) / a11y (push) Has been cancelled
docs: обновление состояния — фича на проде, флаг ВКЛ, тумблер; ПИЛОТ снимок 26.06; CLAUDE §6
ПИЛОТ.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>
2026-06-26 04:38:22 +03:00

34 KiB
Raw Blame History

ГЛАВНОЕ — прочитать первым делом

  1. Не уверен — спроси, не гадай. Один вопрос лучше, чем час работы не туда.
  2. Не выдумывай. Не помнишь — открой файл и проверь, а не «вспоминай по памяти».
  3. «Готово» — только если правда проверил. Что-то упало — скажи честно, не делай вид, что всё хорошо.
  4. Ничего необратимого без разрешения хозяина: не коммить, не выкатывай на боевой сайт, не удаляй и не переписывай чужое.
  5. Говори с хозяином простым русским, без программистских слов — он не программист.
  6. Не закрывай открытые вопросы и не меняй правила без явного «закрываем» / «меняем».
  7. Упёрся в стену или блокировку — остановись и спроси, не ищи обход.
  8. делай максимально автономно, с наставником и судьей решай вопросы пока не упрешься, коммит делай сам попросив эскейп

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
Email 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-motiontechnical 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 SQL-запрос к dev-БД PostgreSQL MCP заменён #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), #8789 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=offsetup
29 Маскирование ПДн в дампах pg_anonymizer на проде liderra.ru (22.05.2026); anon 3.0.13/Rust, загрузка по требованию LOAD 'anon'setup

Нумерация: #1#29 — phase-slot фаз 03; #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. Что НЕ делать

  1. Не подключать Boost к production DB. .env.production не должен попадать в локальный Boost-конфиг.

  2. Не использовать Inertia / Livewire / Tailwind / Filament / Flux UI / Nova / Folio / Volt / Wayfinder guidelines Boost'ау нас Vue + Vuetify.

  3. Не запускать a11y через Lighthouse — единственный источник истины Pa11y.

  4. Не помещать ПДн / токены / API-ключи в коммиты. Правило §5.2 правил Claude. Защита — gitleaks в pre-commit.

  5. Расширенный пул 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.

  6. Не ставить два инструмента на одну задачу — список 10+ запрещённых дублей в docs/Tooling_v8_3.md §9.

  7. Не редактировать этот CLAUDE.md без обновления docs/Pravila_raboty_Claude_v1_1.md и docs/Tooling_v8_3.md — иначе три источника разойдутся (применяется ВНУТРИ flow п.10; пропуск синхронизации — отдельная ошибка даже при работающем плагине).

  8. Не править db/schema.sql без записи в db/CHANGELOG_schema.md — правило §4.2 правил Claude.

  9. Не закрывать открытые вопросы (Биз-*, CTO-*, Ю-*, Диз-*, DO-*, OPEN-*) без явного «закрываем» от заказчика — §2.2 правил Claude.

  10. Не править этот CLAUDE.md напрямую — только через плагин claude-md-management (anthropics/claude-plugins-official marketplace). Два входа:

    • /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.

  11. Не пропускать инвокацию 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.

  12. Резерв. Был «не устанавливать motion runtime библиотеки без прохождения R15.2 PSR_v1». Снят 12.05.2026. Motion-runtime библиотеки разрешены без обоснования; framer-motion остаётся technical block (React-only peerDep).

  13. Не запрашивать override ремонт инфраструктуры для docs-only коммитов/пушей. Хук enforce-verify-before-push сам пропускает изменения, где все staged/unpushed файлы — .md. Для смешанных/кодовых коммитов override остаётся. NB: «docs-only» считается строго по .md-суффиксу — добавление любого конфиг-файла (cspell-words.txt, package.json и т.п.) рядом со spec.md делает diff смешанным.

  14. Перед открытым codebase-вопросом — сначала /graphify query, потом Read/Grep/Glob. Граф проекта (graphify #86, ADR-017) покрывает docs/ + .claude/ + app/. Применяется к структурным/cross-layer вопросам («где скил X используется», «куда тянется зависимость от Y»). Не применяется к известному пути файла (→ Read), узкому regex-поиску (→ Grep), операциям записи или сильно устаревшему графу.

  15. 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'а):

  1. composer require laravel/boost --dev — установлен Boost v2.4.6 + транзитивы (laravel/mcp v0.7.0, laravel/roster v0.5.1, symfony/yaml v7.4).
  2. Этот CLAUDE.md не тронут — Boost при manual setup ничего не пишет в app/CLAUDE.md (и тем более в корневой). Корневой остаётся источником истины.
  3. .mcp.json (корень) — добавлен блок laravel-boost (command=php, args=[app/artisan, boost:mcp]) рядом с playwright/github. PostgreSQL MCP убран ещё в фазе 0 (_comment_postgres).
  4. «Отключение guidelines»избыточно. Boost через laravel/roster auto-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).
  5. Кастомный Vuetify 3 guidelineapp/.ai/guidelines/vuetify.md (путь по Laravel\Boost\Install\GuidelineComposer::userGuidelineDir = '.ai/guidelines').
  6. .mcp.json и app/boost.json — оба в репозитории.
  7. Pest 4 активен — Roster видит его, серверит Pest guidelines. PHPUnit убран из direct deps в коммите 30f0335.
  8. 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.