Files
portal/docs/superpowers/specs/2026-05-09-project-audit-design.md
T
Дмитрий b0343014db docs(spec-audit): пересмотр под Plugin_stack_rules_v1 v1.3 — spec v1.0 → v1.1
§12 «Плагины и MCP» переписана с полным inventory и R-обоснованиями:
- 12.1 Superpowers-skills (6 применяемых + 8 из карты §12.2 не релевантны)
- 12.2 Встроенные плагины: FD plugin НЕ призывается (R10+R13: аудит ≠ дизайн); claude-md-management вне DoD аудита
- 12.3 Внешние плагины (R10): simplify/security-review/review/init/ui-ux-pro-max — только по явному /команде, не призываются
- 12.4 MCP: laravel-boost (D2/D4), playwright опционально (D3), github не используется
- 12.5 CLI-тулы — не плагины, регулируются Tooling Прил. Н

В §3 расширен P0 stack-нарушениями (Pravila §13.9 hard-link на R10).
В §6 D1 включает Pravila/Plugin_stack_rules_v1/Tooling в зону аудита;
D3 проверяет R11 иерархию источников истины UI/UX;
D5 проверяет R6 стек-фильтр Vue+Vuetify и R6.1 Forest.
В §7 добавлен общий R-CHECKS блок поверх P/O чеклиста.
В §10 DoD self-review проверяет «0 R-нарушений в самом отчёте»;
code review мета-проверяет соблюдение Plugin_stack_rules_v1 v1.3.
В §13 добавлены риски misuse FD plugin / priority chain / правок Pravila.
Новая §15 — карта соответствия Plugin_stack_rules_v1 v1.3 → spec
(13 R-правил + Pravila §12/§13.9 + CLAUDE.md §1/§5 п.10/п.11 + Tooling Прил. Н).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 17:01:36 +03:00

36 KiB
Raw Blame History

Spec: Подробный аудит проекта Лидерра — 2026-05-09

Версия: 1.1 (от 09.05.2026 — пересмотр под Plugin_stack_rules_v1 v1.3 + Pravila v1.6 + Прил. Н v1.10) Дата: 09.05.2026 Автор: Claude Code (skill: superpowers:brainstorming) Заказчик: Дмитрий Статус: черновик, ждёт review заказчика

История версий spec'а:

  • v1.1 (09.05.2026) — пересмотр под актуальные правила плагинов: §12 переписан с полным inventory (4 superpowers-skills + 2 встроенных плагина + 4 внешних + 3 MCP); добавлена явная иерархия R10/R11/R13 для агентов D1/D3/D5; в §3 расширен P0 stack-нарушениями; новая §15 — карта соответствия Plugin_stack_rules_v1 v1.3 → spec; самопроверка spec'а/отчёта на «misuse FD plugin» как часть DoD.
  • v1.0 (09.05.2026) — первичный дизайн через superpowers:brainstorming: 4 этапа (sweep тулами → 6 субагентов → консолидация → self-review), P0/P1/P2 + O-perf/O-refactor/O-stack.

1. Цель

Подробный аудит проекта Лидерра на:

  • Дефекты (P) — фактические ошибки, дубли, устаревшие версии/метрики, битые ссылки и якоря, нарушения Plugin_stack_rules_v1 v1.3 (paired stack Superpowers + Frontend Design, иерархия источников истины UI/UX, scope «головенства» stack-правил).
  • Возможности (O) — оптимизация (perf), совершенствование (refactor/quality), модернизация (stack/upgrade).

Результат — один сводный markdown-отчёт с приоритетами. Аудит — диагностический; реализация правок не входит в DoD.

Метаправило: сам аудит соблюдает Plugin_stack_rules_v1 v1.3 — каждое использование плагина/skill'а в плане сопоставлено с явным R-правилом (см. §12 и §15). Приоритет источников при конфликте — по CLAUDE.md §1 (Pravila §12 → Pravila → CLAUDE.md → Plugin_stack_rules_v1 → settings.json → memory → прочие плагины).

2. Охват

Зона Артефакты
Документация narrative docs/*.md (16 файлов), CLAUDE.md, README.md, docs/CHANGELOG_claude_md.md
Правила работы Claude docs/Pravila_raboty_Claude_v1_1.md (v1.6), docs/Plugin_stack_rules_v1.md (v1.3), docs/Tooling_v8_3.md (Прил. Н v1.10) — отдельная подзона D1, проверяется на внутреннюю консистентность и соответствие фактически активному стеку плагинов
Схема БД db/schema.sql, db/CHANGELOG_schema.md, db/00_create_roles.sql, db/02_grants.sql
Дизайн-handoff liderra_v8_handoff/** (BRANDBOOK_v2, DEVELOPER_HANDOFF, токены, 13 HTML-концептов)
Backend app/** — Laravel 13.7, миграции, модели, контроллеры, Pest-тесты, конфиги
Frontend resources/js/**, histoire.config.ts, vite.config.ts
Конфиги корня .mcp.json, lefthook.yml, .markdownlint.json, .gitleaks.toml, .squawk.toml, .lychee.toml, cspell.json, package.json, .gitignore, pa11y.config.json

Out of scope: web/v8/*.html концепты (не в продакшене, заменяются Vue), лендинг/ (⏸ Б-1), node_modules/, vendor/.

3. Категории находок

Дефекты (P)

  • P0 — критичные: фактические ошибки, блокирующие корректность/безопасность.
    • Orphan-FK, противоречия ТЗ↔schema, дубли CREATE TABLE, утечка секретов, RLS-провал на tenant-таблице.
    • Stack-нарушения (Plugin_stack_rules_v1 v1.3): обход stack-gate без явной /команды или R0.4.A исключения (Pravila §13.9 hard-link на R10); упоминания применения FD plugin для не-UI-задач; пропуск Superpowers-skill'а на §12-задаче без §12.3 исключения; упоминания удалённых из стека тулов (Tailwind/Inertia/Livewire/Filament/React/shadcn) в actively используемых документах (§5 п.5 CLAUDE.md).
  • P1 — важные: устаревшие метрики в шапке, битые внутрипроектные ссылки, дубли правил между Pravila/CLAUDE.md/Plugin_stack_rules_v1, расхождение версий между источниками истины (CLAUDE.md ↔ Pravila ↔ Plugin_stack_rules_v1 ↔ Tooling Прил. Н ↔ ТЗ ↔ schema).
  • P2 — мелочи: орфография, формат, линт-замечания без семантики.

Возможности (O)

  • O-perf: N+1, missing indices на FK, eager-loading пропуски, тяжёлые SQL без EXPLAIN, bundle size, lazy-import пропуски, неэффективные RLS-предикаты.
  • O-refactor: файлы >500 строк, нарушения принципа единственной ответственности (SRP), дубли логики, boilerplate, длинные методы (>80 строк), отсутствие type-hints, dead code.
  • O-stack: устаревшие зависимости (composer outdated, npm outdated), deprecated API, упущенные фичи Laravel 13 / Pest 4 / Vue 3.5 / Vuetify 3.12.

Отложенное (НЕ дефекты, выводится отдельной секцией)

  • Открытые вопросы из реестра (Биз-*, CTO-*, Ю-*, Диз-*, DO-*, OPEN-*).
  • Явные workaround until X (Б-1, pg_partman → Artisan-cron, и т.п.).

4. Архитектура — 4 этапа

[Этап 1: Sweep тулами]   parallel, ~10-15 мин
        ↓
   stage1_*.txt   (raw findings из 15 тулов в .tmp/audit/)
        ↓
[Этап 2: Семантический аудит]   6 субагентов parallel, ~30-60 мин
   D1 docs / D2 db / D3 handoff / D4 backend / D5 frontend / D6 configs
        ↓
   stage2_<domain>.md   (×6 в .tmp/audit/, шаблон P/O/Notes)
        ↓
[Этап 3: Консолидация]   синхронно в основном потоке, ~15-30 мин
   дедуп по (file, line, category), переклассификация, секция «Отложенное»
        ↓
   docs/audit_2026-05-09.md   (финал)
        ↓
[Этап 4: Self-review]   verification-before-completion + requesting-code-review

5. Этап 1 — sweep тулами (15 проверок)

# Тул Зона Что ищет
1 markdownlint-cli2 docs/, лендинг/, handoff Линт .md
2 cspell то же Орфо (ru-ru + en + cspell-words.txt)
3 lychee то же + CLAUDE.md + README.md Битые внутрипроектные ссылки и якоря
4 pa11y web/v8/*.html A11y нарушения (для контекста — handoff обещает 0)
5 grep-патрули db/schema.sql Дубли через regex ^CREATE TABLE\s+\w+, ^CREATE INDEX\s+\w+ (с подсчётом групп); orphan-FK через парные regex REFERENCES\s+(\w+)CREATE TABLE\s+\1
6 squawk db/schema.sql Опасные миграционные паттерны
7 pgFormatter --dry-run db/schema.sql Форматирование (диф, не правки)
8 Pest app/ Прогон (фиксируем X/Y факт)
9 Larastan analyse app/ Стат-анализ PHP
10 vue-tsc --noEmit resources/js/ Type-check Vue
11 ESLint --max-warnings=0 resources/js/ Линт + правила Vue
12 Vitest run resources/js/ Прогон (фиксируем X/Y факт)
13 composer outdated --direct app/ Устаревшие PHP-зависимости (только direct)
14 npm outdated корень Устаревшие npm-зависимости
15 composer audit app/ CVE в PHP-зависимостях (поверх Roave)

gitleaks в этап 1 не вынесен — у нас в pre-commit, secrets не доходят до main.

Параллелизация — через skill superpowers:dispatching-parallel-agents или прямые параллельные Bash-вызовы.

6. Этап 2 — 6 субагентов

Агент Зона Главные таргеты
D1 narrative docs/*.md (16) + CLAUDE.md + README.md + docs/CHANGELOG_claude_md.md + docs/Pravila_raboty_Claude_v1_1.md + docs/Plugin_stack_rules_v1.md + docs/Tooling_v8_3.md Версии в шапках синхронны (5+ источников: CLAUDE.md v1.81 ↔ Tooling Прил. Н v1.10 ↔ Pravila v1.6 ↔ Plugin_stack_rules_v1 v1.3 ↔ ТЗ v8.5 ↔ schema v8.10), 0 «TBD», метрики в шапках = факту, кросс-ссылки актуальны, дубли блоков, stack-консистентность: упоминания тулов в narrative ↔ фактически активный набор из Прил. Н (29 номеров, 19 активных), внутренние ссылки между Pravila §12/§13.9 и Plugin_stack_rules_v1 R0/R10/R13
D2 db db/schema.sql + db/CHANGELOG_schema.md + db/00_create_roles.sql + db/02_grants.sql Метрики (56/12/95/37/5/13) считаются grep'ом и сверяются с шапкой, FK-orphans, дубли таблиц/индексов, RLS-coverage tenant-таблиц, синхронность с ТЗ §6.4 (14 slug'ов воронки)
D3 handoff liderra_v8_handoff/** Совпадение токенов с resources/js/plugins/vuetify.ts, 14 OKLCH-статусов handoff ↔ 14 slug'ов schema, состав фич handoff ≠ источник истины (источник = ТЗ), 81 axe-violation vs «0 violations», R11 иерархия источников истины UI/UX соблюдена в handoff (Brandbook → ТЗ → FD → Boost → ui-ux-pro-max → Vue/Vuetify docs); handoff ничего не предписывает по фичам/статусам — только бренд/токены/компоненты
D4 backend app/** RLS-bypass, отсутствие tenant-middleware на роутах, password vs password_hash (наш override), encrypted-cast, секреты в .env.example, дубли FormRequest, тесты с password ≥8 chars
D5 frontend resources/js/** + histoire.config.ts + vite.config.ts Auto-import Vuetify дубликаты, router meta.layout консистентность, Pinia auth-store: токен в localStorage, axios baseURL/credentials, Histoire stories ↔ компоненты handoff, R6 стек-фильтр: 0 импортов/JSX/className из React/Tailwind/shadcn (любые остатки = P0 stack-нарушение); R6.1 hard-override Forest: палитра в vuetify.ts ≠ паттерну «NEVER Inter / bold maximalism» из FD-skill (palette = Forest Teal #0F6E56)
D6 configs корень: 10 конфигов Соответствие командам в CLAUDE.md §4 / Tooling §3, hooks lefthook покрывают заявленное, .mcp.json без отключённых блоков, версии в package.json ↔ Tooling Прил. Н, stack-aware: ~/.claude/settings.json декларативно подключает Frontend Design plugin (paired stack), .mcp.json содержит ровно 3 MCP (laravel-boost, github, playwright) — никаких лишних

Каждому агенту на вход: (1) выдержка этапа 1 для своей зоны, (2) общий чеклист (см. §7), (3) узкие таргеты домена.

Каждый агент возвращает stage2_<domain>.md в .tmp/audit/ по шаблону:

# stage2 / <domain>
## P0 — N items
   ### P0-XX — <имя>
   - Файл: <path>:<line>
   - Категория: <фактическая нестыковка | дубль | устаревшая версия | битая ссылка>
   - Цитата: «...»
   - Сравнение: «X в A» vs «Y в B»
   - Предлагаемая правка: <конкретно>
   - Усилие: S/M/L
## P1 — N
## P2 — N
## O-perf — N
   ### O-perf-XX — <имя>
   - Файл: <path>:<line>
   - Категория: N+1 / missing index / bundle size / RLS predicate / ...
   - Текущее поведение: <описание>
   - Предлагаемое улучшение: <конкретно>
   - Профит: <качественно>
   - Риск: low/medium/high
   - Усилие: S/M/L
## O-refactor — N
## O-stack — N
## Notes (что не получилось проверить и почему)

7. Чеклист агентов

Общий (для всех 6 — без него ни один P/O-пункт не считается)

DEFECT (P)
□ Фактическая ошибка vs другой источник истины (указать ОБА места)
□ Дубль (структурно идентичный блок/правило/таблица — обе позиции)
□ Устаревшая версия в шапке (vs git log / grep / шапки соседа)
□ Метрика в шапке ≠ факту (шапка vs grep)
□ Битая внутрипроектная ссылка / якорь (lychee + ручная проверка)

IMPROVEMENT (O)
□ O-perf: явная неэффективность (дублирующий запрос, missing index, тяжёлый цикл)
□ O-refactor: файл >500 строк, метод/функция >80 строк, дубль логики
□ O-stack: устаревшая зависимость, упущенная фича актуального стека, deprecated API

R-CHECKS (нарушения Plugin_stack_rules_v1 v1.3 — фиксируются как P0)
□ R0.1: scope «головенства» Plugin_stack_rules_v1 не превышен — stack головной только над уровнями 4–6 priority chain (settings.json, memory, прочие плагины), не над 02 (Pravila §12, Pravila, CLAUDE.md)
□ R6: стек-фильтр Vue+Vuetify соблюдён в зоне; 0 упоминаний/импортов React/Tailwind/shadcn/JSX в actively используемых файлах
□ R6.1: hard-override Forest — игнор паттерна FD-skill «NEVER Inter / bold maximalism» (palette = Forest Teal #0F6E56, font = Inter)
□ R10: внешние плагины (review/security-review/simplify/init/ui-ux-pro-max/claude-md-management) применяются только по явному /команде или R0.4.A исключению; Boost = служебный слой, не источник истины UI
□ R11: иерархия 6 источников истины UI/UX (Brandbook → ТЗ+schema → FD → Boost → ui-ux-pro-max → Vue/Vuetify docs) не нарушена; handoff не источник по фичам/статусам
□ R13: тип задачи правильно классифицирован (Auto-mode + §12 + R0.6 decision matrix); §12 hard rule не байпасится без §12.3 исключения
□ Pravila §12: Superpowers-skill инвокировался первым для §12.2-задач; §13.9: байпас stack-gate без явной /команды или R0.4.A = нарушение §13

Доменные таргеты — поверх общего

Агент Доп. P-таргеты Доп. O-таргеты
D1 narrative cross-version таблица 5+ источников (CLAUDE.md ↔ Pravila ↔ Plugin_stack_rules_v1 ↔ Tooling Прил. Н ↔ ТЗ ↔ schema), 0 «TBD»/«готовится», упоминания удалённых тулов (Tailwind/Inertia/Livewire/Filament/React/shadcn), цитаты сами на себя; R-cross-references: ссылки между Pravila §12/§13.9 ↔ Plugin_stack_rules_v1 R0/R10/R13 валидны и взаимны O-refactor: narrative >2000 строк (выносить в приложения); O-stack: упоминания версий vs package.json/composer.lock; O-rule-refactor: дубли правил между Pravila/CLAUDE.md/Plugin_stack_rules_v1 (одно правило в одном месте, остальные — hard-link)
D2 db orphan FK (regex REFERENCES (\w+)), дубли CREATE TABLE/INDEX, RLS-coverage всех tenant_id-таблиц, 14 slug'ов воронки ↔ ТЗ §6.4 O-perf: FK без индекса, RLS-предикаты с nested SELECT, неконсистентные DEFAULT'ы; O-refactor: дубли CHECK; O-stack: фичи PG 16
D3 handoff токены ↔ vuetify.ts, 14 OKLCH ↔ 14 slug, состав фич handoff ≠ ТЗ, 81 axe-violation vs «0»; R11 иерархия соблюдена (handoff ниже Brandbook+ТЗ, выше Vue/Vuetify docs) O-stack: WOFF2 vs WOFF, font-display: swap, упущенные паттерны Vuetify 3.12
D4 backend RLS-bypass, роуты без tenant-middleware, password vs password_hash, encrypted-cast, секреты, дубли FormRequest, тесты password ≥8 O-perf: N+1 в контроллерах, missing eager loading в index, отсутствие chunk/lazy; O-refactor: контроллеры >500 строк; O-stack: Pest 4 browser/stress/mutation, Laravel 13.7 фичи
D5 frontend auto-import Vuetify дубликаты, router meta.layout, токен в localStorage в plain, axios baseURL/credentials, Histoire ↔ handoff; R6 стек-фильтр: 0 импортов/className/JSX из React/Tailwind/shadcn; R6.1 Forest: палитра в vuetify.ts неприкосновенна O-perf: lazy-imports пропуски, unused exports, bundle size; O-refactor: компоненты >300 строк; O-stack: Vue 3.5 / Vuetify 3.12 фичи, Vite 8 ↔ Histoire 1.0-beta.1
D6 configs соответствие командам CLAUDE.md/Tooling, hooks lefthook, .mcp.json без отключённых блоков, версии package.json ↔ Tooling; stack-aware: ~/.claude/settings.json декларативно подключает FD plugin (paired stack), .mcp.json = 3 MCP O-perf: тяжёлые/redundant хуки; O-stack: формат конфигов (eslint flat-config), $schema-актуальность

8. Этап 3 — консолидация

Синхронно в основном потоке:

  1. Собрать 6 stage2_<domain>.md файлов.
  2. Дедуплицировать находки по ключу (file, line, category) — если две зоны нашли одно и то же, оставить одну с наиболее полным описанием.
  3. Переклассифицировать P0/P1/P2 в едином масштабе по критериям §3 (агенты могут давать локально завышенный приоритет — выровнять).
  4. Сгенерировать docs/audit_2026-05-09.md по структуре §9.
  5. Заполнить раздел «Отложенное» из реестра открытых вопросов и явных workaround-маркеров.

9. Структура финального отчёта

# Аудит проекта Лидерра — 2026-05-09
**Версия:** 1.0  •  **Охват:** docs + db + Laravel + Vue + handoff + конфиги
**Сводка:** P0=N, P1=N, P2=N, O-perf=N, O-refactor=N, O-stack=N, Отложенное=N

## 1. Резюме (5-10 строк)
## 2. Дефекты P0
## 3. Дефекты P1
## 4. Дефекты P2
## 5. Возможности улучшения
   ### 5.1 Оптимизация (O-perf)
   ### 5.2 Совершенствование (O-refactor)
   ### 5.3 Модернизация (O-stack)
## 6. Отложенное (НЕ дефекты)
   ### 6.1 Открытые вопросы из реестра
   ### 6.2 Явные workaround-ы с условием снятия
## 7. Метрики проекта на момент аудита
   - schema: 56 таблиц / 12 партиций / 95 индексов / 37 RLS / 5 функций / 13 триггеров
   - Pest: X/Y, Vitest: X/Y, Histoire: X/Y stories
   - Расхождения с шапками CLAUDE.md/Tooling/Pravila — таблицей
## 8. Что НЕ покрыто аудитом
## Приложение A — raw output тулов (этап 1, ссылками на .tmp/audit/)

10. Этап 4 — Definition of Done

Аудит считается завершённым, когда:

  1. Этап 1 завершён — 15 тулов прогнаны, raw output в .tmp/audit/stage1_*.txt.
  2. Этап 2 завершён — 6 stage2_<domain>.md собраны.
  3. Этап 3 завершён — docs/audit_2026-05-09.md сгенерирован, дедуп пройден, приоритеты выровнены.
  4. Self-review (verification-before-completion):
    • все упомянутые file:line существуют (Read/Grep);
    • метрики в §7 отчёта совпадают с фактом (grep на db/schema.sql, прогон Pest/Vitest);
    • 0 «TBD»/«TODO»/placeholder в отчёте;
    • 0 цитат без атрибуции файла;
    • 0 R-нарушений в самом отчёте: отчёт не призывает FD plugin для не-UI-задач, не байпасит Superpowers-skill для §12-задач, не предписывает применение simplify/security-review/review/init без явного /команды (R10), не предлагает иерархию источников UI/UX вне R11.
  5. Code review отчёта через requesting-code-review skill — субагент проверяет консистентность И соблюдение Plugin_stack_rules_v1 v1.3 в самом отчёте (мета-проверка: каждое предложенное действие сопоставлено с R-правилом).
  6. Коммит: docs(audit): сводный отчёт аудита проекта на 2026-05-09 — P-дефекты + O-возможности. Коммитится только docs/audit_2026-05-09.md; raw output этапа 1 в .tmp/audit/ НЕ коммитится (.tmp/ уже в .gitignore).

Не входит в DoD: реализация правок. Любая правка по итогам отчёта — отдельный «делай» от заказчика.

11. Бюджет

Этап Wall-clock
Этап 1 sweep 10-15 мин
Этап 2 семантика 30-60 мин
Этап 3 консолидация 15-30 мин
Этап 4 self-review + code review 10-15 мин
Итого ~1.5-2 часа

12. Плагины и MCP — полный inventory с R-обоснованиями

Метаправило: каждое использование плагина/skill'а в плане сопоставлено с явным R-правилом Plugin_stack_rules_v1 v1.3 (или с явным §-номером Pravila/CLAUDE.md). Если обоснования нет — плагин не призывается.

12.1. Superpowers-skills (основной process-слой)

Skill Статус R-обоснование
superpowers:brainstorming применён сейчас (дизайн spec'а) Pravila §12.2 (creative work — обязательная инвокация); R13 decision matrix: «дизайн нового артефакта» = §12 hard rule
superpowers:writing-plans применится после approve spec'а (spec → plan) Pravila §12.2 (multi-step task); R13: «план для известного спека» = §12 hard rule
superpowers:dispatching-parallel-agents применится в этапе 1 (12+ тулов параллельно) и этапе 2 (6 субагентов параллельно) Pravila §12.2 (parallel work для 2+ независимых задач)
superpowers:subagent-driven-development ⚠️ применится в этапе 2, если plan дробит на review-checkpoints Pravila §12.2 (execution с review-checkpoints); решение откладывается на writing-plans
superpowers:verification-before-completion применится в этапе 4 (DoD-проверка) Pravila §12.2 (verify перед claim'ом «готово»)
superpowers:requesting-code-review применится после финального отчёта (мета-review) Pravila §12.2 (review major artefact); R10: review = part of superpowers, не внешний плагин
остальные 8 superpowers-skills (TDD, debugging, finishing-a-development-branch, receiving-code-review, using-git-worktrees, writing-skills, using-superpowers — карта §12.2) не применяются TDD/debug — нет кода для написания/багов для починки; worktrees — аудит на чистом дереве, не нужно изоляции; remaining — out-of-scope

12.2. Встроенные плагины Claude (paired stack)

Плагин Статус R-обоснование
Frontend Design plugin (Anthropic, paired со Superpowers) НЕ призывается в аудите R10: внешние плагины как инструменты — FD активируется только для UI-дизайн-задач; аудит ≠ дизайн, это диагностика существующего. R13 decision matrix: «аудит/инспекция» — это process-задача (§12 superpowers), не дизайн-задача. R6 стек-фильтр будет применяться только если найдены reference-вопросы (тогда — через FD MCP запрос с фильтром Vue+Vuetify, отбрасывая React/Tailwind/shadcn) — но в текущем плане таких запросов нет. Если в этапе 2 D5 найдёт UI-нестыковку, требующую reference-паттерна — это фиксируется как находка в отчёте, FD plugin не призывается на ходу
claude-md-management НЕ призывается в аудите CLAUDE.md §5 п.10: единственный путь правок CLAUDE.md. Аудит = диагностика, не правки. Применится в Phase 5 (вне DoD аудита), если по итогам отчёта решим править CLAUDE.md/Pravila/Plugin_stack_rules_v1. На сам spec правок не делает — этот файл живёт под docs/superpowers/specs/ и не входит в scope claude-md-management

12.3. Внешние плагины (по R10 — только по явному /команде)

Плагин Статус R-обоснование
simplify НЕ призывается R10: внешний плагин, только по явному /команде. Функционально перекрывает O-refactor, но: (а) нет явного /simplify от заказчика; (б) формат аудита = отчёт без автофиксов, simplify сразу фиксит
security-review НЕ призывается R10: только по явному /команде. Технически: работает на pending changes (uncommitted/diff vs main), у нас clean tree → запуск даст 0 findings. Security-аспекты (RLS, secrets, encrypted-cast) — в чеклисте D4 backend в режиме статического аудита
review НЕ призывается R10: только по явному /review. Это PR-review, у нас не PR-задача
init НЕ призывается R10: только по явному /init. Инициализация CLAUDE.md, не релевантно
ui-ux-pro-max НЕ призывается R10/R11: «резерв-библиотека», уровень 5 в иерархии R11 (ниже FD, ниже Boost). Аудит ≠ дизайнная работа
остальные user-invocable skills из списка (update-config, keybindings-help, loop, schedule, claude-api, fewer-permission-prompts, revise-claude-md, claude-md-improver) НЕ призываются Out-of-scope для аудита

12.4. MCP-серверы (.mcp.json)

MCP Статус Что зовём R-обоснование
laravel-boost применяется в этапах 1, 2 (D2, D4) database-schema (live snapshot для сверки с db/schema.sql), last-error, read-log-entries (контекст для O-perf), search-docs (O-stack — упущенные фичи Laravel/Pest) R11: Boost guidelines = уровень 4 в иерархии источников истины UI/UX, ниже ТЗ/Brandbook/FD. Для backend (D4) и db (D2) — основной MCP для live-проверки
github НЕ применяется Формат отчёта = один .md в docs/, не GitHub Issues (выбор заказчика на этапе brainstorming)
playwright ⚠️ опционально в D3 визуальная сверка web/v8/*.html (axe-violations) По умолчанию out-of-scope: web/v8/* это старые концепты, не продакшен. Если D3 решит проверить визуально — допустимо

12.5. CLI-тулы (НЕ плагины, через Bash)

markdownlint-cli2, cspell, lychee, pa11y, squawk, pgFormatter, Pest, Larastan, vue-tsc, ESLint, Vitest, Pint, composer outdated, npm outdated, composer audit — это CLI из npm/composer, не плагины Claude. Не подпадают под R-правила Plugin_stack_rules_v1 — их применение регулируется CLAUDE.md §3 / Tooling Прил. Н.

13. Риски и предположения

  • Предположение: все 15 тулов в этапе 1 запускаются на этой машине без падений (на Windows-нативном стеке проверены 12; composer outdated/npm outdated/composer audit стандартные, рисков нет).
  • Риск: агенты этапа 2 могут локально переоценить приоритет — митигация в §8.3 (переклассификация в этапе 3).
  • Риск: O-stack находки могут предлагать апгрейды, которые сломают стенд (например, мажор npm-deps). Митигация — в шаблоне O-XX обязательное поле «Риск: low/medium/high», заказчик решает по каждой отдельно.
  • Предположение: PG-метрики (56/12/95/37/5/13) — текущее на 09.05.2026 после schema v8.10. Если за время аудита будет правка db/schema.sql — перепрогнать §7 отчёта.
  • Риск (новый): субагент D5 может «подсказать» вызвать FD plugin за reference-паттерном при обнаружении UI-нестыковки. Митигация — в чеклист D5 явный запрет на призыв FD/simplify/security-review «на ходу» (R10): любая такая нестыковка → находка в отчёт, не делегирование плагину. Self-review в этапе 4 проверяет это.
  • Риск (новый): агенты могут спутать иерархию приоритетов CLAUDE.md §1 (Pravila §12 → Pravila → CLAUDE.md → Plugin_stack_rules_v1 → settings.json → memory) и попытаться обосновать находку через нижний уровень (memory). Митигация — каждому агенту даётся выдержка CLAUDE.md §1 + Plugin_stack_rules_v1 R0.1 на вход.
  • Риск (новый): агенты могут предложить править Pravila/Plugin_stack_rules_v1 как «исправление stack-нарушения». Это правки СТРУКТУРЫ правил, требующие brainstorming + согласования с заказчиком, не правка по аудиту. Митигация — любая R-находка фиксируется как диагноз, предлагаемая правка = рекомендация для отдельного обсуждения, не «делай немедленно».

14. Не входит в этот spec

  • Сам прогон аудита (это будет implementation plan через superpowers:writing-plans).
  • Реализация правок по итогам отчёта.
  • Регулярное расписание (если потребуется — отдельный routine через superpowers:schedule skill).
  • Правки самих Pravila / Plugin_stack_rules_v1 / CLAUDE.md по итогам R-находок — это отдельный flow через claude-md-management.

15. Карта соответствия Plugin_stack_rules_v1 v1.3 → spec

Каждое правило Plugin_stack_rules_v1, которое влияет на этот spec, явно отображено:

R Правило (краткое) Где в spec'е применяется
R0.1 scope «головенства» stack-правил §1 Метаправило (приоритет источников); §12 (метаправило inventory'я); §13 риск priority chain
R0.4.A исключения для байпаса stack-gate §12.3 (внешние плагины — без явной /команды не призываются)
R0.6 classification confidence §12.1 (R-обоснования каждого superpowers-skill'а)
R6 стек-фильтр Vue+Vuetify §6 D5 frontend; §7 общий R-CHECKS
R6.1 hard-override Forest §6 D5 frontend (palette неприкосновенна)
R10 внешние плагины как инструменты §12.3 (полный inventory с явным «не призывается»)
R11 иерархия 6 источников истины UI/UX §6 D3 handoff; §7 общий R-CHECKS
R12 три паттерна дизайн-решений НЕ применимо — аудит не дизайн-задача
R13 decision matrix 14 типов задач §12.1 (классификация каждого superpowers-skill'а как §12-задачи); §13 риск misuse
Pravila §12 Superpowers hard rule §12.1 (brainstorming сейчас, writing-plans следующим, parallel-agents/verify/review в этапах 1/2/4)
Pravila §13.9 hard-link на R10 §3 P0 (stack-нарушения), §7 R-CHECKS
CLAUDE.md §1 priority chain §1 Метаправило, §13 риск
CLAUDE.md §5 п.10 claude-md-management как единственный путь правок CLAUDE.md §12.2 (применится в Phase 5 вне DoD); §14 (правки правил вне scope spec'а)
CLAUDE.md §5 п.11 Superpowers hard rule в CLAUDE.md §12.1 (применение всех 6 skills в плане)
Tooling Прил. Н v1.10 реестр 29 инструментов (19 активных) + #30 FD plugin §12.2 FD plugin как paired stack; §12.5 CLI-тулы как не-плагины