Дмитрий
845477603a
docs(audit): Phase 10+11+12+13+14 findings batch (audit #2 )
...
Phase 10 — Pa11y 4 guest URLs: ✅ all clean.
Phase 11 — TODO sweep: 19 matches (stable vs 12.05).
Phase 12 — Bundle: critical-path ~189 kB gzip, +25 kB drift vs 12.05.
Phase 13 — Coverage: 78.30/75.78/70.12/80.47. P1 router.spec.ts timeouts под coverage.
Phase 14 — Pre-prod 🟡 : P2 Sentry prod SDK missing, partitions cron not registered, runbook отсутствует.
cspell-words.txt: +«редиректится».
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 11:11:40 +03:00
Дмитрий
31f804581d
docs(audit): Phase 6 cross-doc integrity findings (audit #2 )
...
7 normative docs version match (factual vs memory):
- CLAUDE.md v1.92 ✅ , Pravila v1.13 ✅ , PSR_v1 v2.1 ✅ , Tooling v1.17 ✅
- Реестр v1.83 ✅ , schema.sql v8.20 ✅ , README_АРХИВ v8.5 ✅
routes/web.php: 26 explicit Route::view + Route::fallback — комплектен. 12.05 finding /projects+/reminders+/admin/* missing — fixed `b9038bc`. /admin top-level index new.
Severity Phase 6: P0=0 / P1=0 / P2=0 / P3=0. ✅ vs 12.05 baseline (5 P2 drift) — параллельная сессия PR #4 sync'нула все версии.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 10:42:07 +03:00
Дмитрий
e81b9c45b4
docs(audit): Phase 5 UI smoke (focused) + Q.DEFER blocked entries (audit #2 )
...
Phase 5 reduced scope (transparent): 17 routes HTTP 200 ✅ + CTO-19 Lucide structural verification (vuetify.ts:19 import + prod bundle inclusion). Indirect coverage via Vitest 88/683 + Histoire 35/63 + Vite build (Phase 2).
Not covered этой session: Playwright MCP interactive flows для 24 views.
Q.DEFER entries → blocked.md:
- Q.DEFER.001: Phase 5 full 24-view Playwright smoke deferred.
- Q.DEFER.002: Phase 10 axe-core 16 auth views deferred.
Severity Phase 5: P0=0 / P1=0 / P2=0 / P3=1.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 10:40:42 +03:00
Дмитрий
17d530f669
docs(audit): Phase 4 security findings (audit #2 )
...
- 4.1 CI workflows enum (methodology gap closure per Pravila v1.12 §4.6): 3 active (dependency-check.yml + sast.yml + trivy.yml). Semgrep SAST confirmed deployed: p/php + p/javascript + p/typescript + p/secrets, SARIF upload to GitHub Security tab. Q.INFO.001 12.05 closure verified holding.
- 4.2 Gitleaks full history: 401 commits / 12.11 MB / 0 leaks ✅ . vs 12.05 (333/11.14) — +68 commits, still clean.
- 4.3 Composer audit cross-link: 0 advisories.
- 4.4 Production secrets grep: 0 AWS prefix, 0 Stripe prefix в app/.
Severity Phase 4: P0=0 / P1=0 / P2=0 / P3=0 — fully clean.
CI security stack полный: SAST + dependency-check + Trivy = pre-prod readiness baseline.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 10:37:30 +03:00
Дмитрий
75dc375da3
docs(audit): Phase 3 schema integrity findings (audit #2 )
...
Boost MCP queries к dev liderra:
- Root tables: 61 (vs schema.sql v8.20 header 62; vs CLAUDE.md memory dev-actual 75 stale).
- Partition children: 12 (vs header 12 ✅ ; vs memory 102 stale — после migrate:fresh).
- Indexes: 289 (vs header 117 stale; vs memory 289 ✅ ).
- RLS policies: 39 ✅ exact match.
- User functions: 5 ✅ exact by name (audit_block_mutation, audit_chain_hash, calc_lead_score, report_jobs_log_export, set_pd_subject_request_deadline).
- Triggers: 19 (vs header 13 stale; vs memory 19 ✅ ).
- DB roles 0 by design (dev).
- Orphan FK: 0 ✅ .
Severity Phase 3: P0=0 / P1=0 / P2=2 (schema.sql header drift + CLAUDE.md/memory partition drift after migrate:fresh) / P3=0.
Structural integrity 100%, drift только в documentation accuracy.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 10:35:57 +03:00
Дмитрий
22d8613578
docs(audit): Phase 2 test suite findings (audit #2 )
...
- Pest sequential: 742/736/3/3 (квирк 62 cumulative state — 3 expected fails LookupsTest×2 + ProjectExtensionsTest, numbers ↑ vs 12.05: 1465/12176 — больше накопления).
- Pest --parallel --recreate-databases: 742/738/1/3 — 1 sporadic regression vs 12.05 baseline 739/0/3: CsvReconcileJobTest квирк 72 (Redis supplier:session race в parallel subdir-only).
- Vitest: 88f/683/3 ✅ exact match baseline.
- Histoire: 35/63 ✅ match.
- Vite build: 2.15s ✅ faster than baseline. P2 bundle drift app-B-3WRbXK.js +21 kB raw.
Severity Phase 2: P0=0 / P1=4 (all FIX-DEFER known quirks) / P2=1 / P3=1.
cspell-words.txt: +«квирков» (валидная gen-plural форма).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 10:34:01 +03:00
Дмитрий
51440f4e6d
docs(audit): Phase 1 static analysis findings (audit #2 )
...
Subagent ×4 parallel dispatch результаты:
- Backend (Pint/Larastan/composer audit): ✅ all 0 errors. P3 composer audit network warn (cached DB).
- Frontend (ESLint/vue-tsc/prettier/knip): ESLint 0, vue-tsc 0. P2 prettier 312 files mismatch (87% — generated .histoire/dist + coverage; ~40 real source). P2 knip lucide-vue-next false-positive (dynamic IconSet pattern).
- Docs (markdownlint/cspell/lychee): ✅ all clean (75 md / 88 cspell / 367 links).
- SQL (squawk/pgFormatter): squawk 0. P3 pgFormatter 6284 lines diff — Q.HARD.002 documented «не трогать».
Severity Phase 1: P0=0 / P1=0 / P2=2 / P3=2. vs 12.05 baseline (P1=44, P2=316) — massive improvement.
Также Phase 0 post-pause update: параллельная сессия завершилась PR #4 merge 66ebb22 , нормативка bumped до v1.92/v1.13/v2.1/v1.17, +sentry/redis MCP, +SAST workflow.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 10:25:34 +03:00
CoralMinister
66ebb22043
Merge pull request #4 from CoralMinister/feat/claude-automation-norm-sync
...
docs(meta): sync нормативки — #34 Sentry MCP + #35 Redis MCP (off-phase debug-runtime)Feat/claude automation norm sync
2026-05-13 10:05:26 +03:00
Дмитрий
db167c1beb
docs(meta): CLAUDE.md v1.91 → v1.92 — §3 +#34/#35 sentry+redis (off-phase debug-runtime)
...
Применены 9 edits через /claude-md-management:claude-md-improver per §5 п.10:
- Шапка: v1.91 → v1.92 от 13.05.2026 day +1
- §0 row Pravila: v1.12 → v1.13 (§13.2 +Off-phase MCP debug-runtime)
- §0 row PSR_v1: v2.0 → v2.1 (R10.1 Блок 3 +sentry+redis)
- §0 row Tooling: v1.16 → v1.17; «33 формализованных» → «35»
- §1 priority chain row 2b: «33 инструментов» → «35»
- §3 title: «Карта 33» → «Карта 35»
- §3.3 table: +#34 Sentry MCP + #35 Redis MCP rows после #33
- §3.3 footer: «Total: 33 = 29+3+1» → «35 = 29+5+1»
- §9 история: +v1.92 entry
Категория debug-runtime — отдельная от UI-пула (UPM/21st) и от infrastructure
(claude-md-management). Не trigger'ит R6.0/R6.1 и не входит в R14 pipeline.
READ-ONLY usage обязателен.
Связано: Tooling 763aeae (v1.17), PSR_v1 c1f9719 (v2.1), Pravila 318aed4 (v1.13).
PR #3 (cc5f63b ) merge precedent. Branch: feat/claude-automation-norm-sync.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 09:52:39 +03:00
Дмитрий
a0fbe53eea
chore(cspell): add «нормативку» (accusative case)
...
Поддержка для CLAUDE.md v1.92 шапка. «нормативки» (genitive) уже в словаре —
inflection-blind cspell не распознаёт «нормативку» автоматически.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 09:52:38 +03:00
Дмитрий
318aed4f2c
docs(rules): §13.2 +Off-phase MCP debug-runtime (sentry+redis) — Pravila v1.12 → v1.13
...
Применены 3 edits per Task 9 drafts (commit 00eb8ad ):
- Шапка: v1.12 → v1.13 от 13.05.2026 day +1; +«Что изменилось в v1.13» section
- §13.2 cross-ref на PSR_v1: v2.0 (15 правил R0–R14) → v2.1 (+R10.1 Блок 3 sentry+redis)
- §13.2 +новый абзац «Off-phase MCP debug-runtime (отдельная категория)» после
«Инфраструктурные плагины» paragraph: sentry-mcp (#34 , pending Б-1) +
redis-mcp (#35 , deprecated, Memurai verified)
Категория отдельная от UI-пула (§13.2 paired-stack + UPM + 21st) и от
infrastructure (claude-md-management). Не trigger'ит R6.0/R6.1 stack-фильтры
и не входит в R14 pipeline UI-генераторов. READ-ONLY usage обязателен.
Связано: Tooling v1.16 → v1.17 (763aeae ), PSR_v1 v2.0 → v2.1 (c1f9719 ),
CLAUDE.md v1.91 → v1.92 (next via claude-md-management).
PR #3 (cc5f63b ) merge precedent.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 09:48:28 +03:00
Дмитрий
c1f9719d67
docs(psr): R10.1 Блок 3 +sentry+redis MCP (debug-runtime category) — v2.0 → v2.1
...
Применены 3 edits per Task 9 drafts (commit 00eb8ad ):
- Шапка: v2.0 → v2.1 от 13.05.2026 day +1; L4 narrative +упоминание debug-runtime MCP
- R10.1 Блок 3 (MCP-серверы): +2 строки sentry + redis с категорией debug-runtime
- История версий: +v2.1 entry перед v2.0
NB по drafts correction: drafts указывали "Блок 1" — actual right block для MCP serverов = Блок 3 (MCP-серверы по `~/.claude.json` / `.mcp.json`).
Категория debug-runtime introduced — отдельная от UI-пула (Pravila §13) и infrastructure
(claude-md-management). READ-ONLY usage, не trigger'ит R6.0/R6.1 фильтры, не входит в R14 pipeline.
Связано: Tooling v1.16 → v1.17 (763aeae ), CLAUDE.md v1.91 → v1.92, Pravila v1.12 → v1.13.
PR #3 (cc5f63b ) merge precedent.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 09:47:04 +03:00
Дмитрий
763aeae0a4
docs(tooling): §0 +#34 Sentry MCP + #35 Redis MCP (off-phase debug-runtime) — v1.16 → v1.17
...
Применены 5 edits per Task 9 drafts (commit 00eb8ad ):
- §0 Сводка row off-phase tools: +3 → +5
- §0 footer: «Итого формализованных позиций» 33 → 35
- §4.8 (новый) — #34 Sentry MCP (@sentry/mcp-server@0.33 .0+, official; pending Б-1)
- §4.9 (новый) — #35 Redis MCP (@modelcontextprotocol/server-redis@2025.4.25, deprecated Anthropic source; Memurai PONG verified Task 4)
- §13 история: +v1.16 строка (missing gap) + v1.17 строка
- Footer notes: +v1.16 + v1.17 prepended
- Шапка: v1.16 → v1.17 от 13.05.2026 day +1
Категория debug-runtime — отдельная от UI-пула (UPM/21st) и инфраструктурного (claude-md-management).
Не trigger'ит R6.0/R6.1 фильтры и не входит в R14 pipeline.
Связано: PSR_v1 v2.0 → v2.1, CLAUDE.md v1.91 → v1.92, Pravila v1.12 → v1.13 (separate commits).
PR #3 (cc5f63b ) merge precedent.
Verification: markdownlint 0 errors, lychee 5/5 OK 0 broken, gitleaks 10.91 KB no leaks.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 09:45:04 +03:00
Дмитрий
d7d70ccb4d
chore(cspell): add 3 words (wenit, FLUSHDB, LPUSH)
...
Поддержка для Tooling v1.17 §4.9 Redis MCP entry:
- wenit — npm пакет автор (@wenit/redis-mcp-server, post-MVP migration candidate)
- FLUSHDB, LPUSH — Redis команды (forbidden в READ-ONLY usage)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 09:44:50 +03:00
Дмитрий
2ece232fda
Merge branch 'main' of https://github.com/CoralMinister/lidpotok
2026-05-13 09:33:14 +03:00
CoralMinister
cc5f63b456
Merge pull request #3 from CoralMinister/feat/claude-automation
...
Feat/claude automation
2026-05-13 09:26:46 +03:00
Дмитрий
c0a5fd1807
feat(agent): extend pest-parallel-debugger с quirk 77 (unique-key collision)
...
Applied 4 edits per quirk-77 plan Task 3:
- Edit 3.1: добавлен Quirk 77 entry в known-quirks section (between Quirk 73 и NB line)
- Edit 3.2: добавлена Hypothesis 4 quirk 77 в diagnostic pipeline (renumber «other» к H5)
- Edit 3.3: обновлён output format template (+Hypothesis 4 row + extended Conclusion options)
- Edit 3.4: обновлён description frontmatter (+quirk 77 classification (d))
Quirk 77: Pest --parallel deterministic unique-key collision на projects(tenant_id, name)
в ProjectBulkActionsTest::rejects_bulk_when_scope_filter_captures_more_than_500_projects.
Evidence (Task 8 baseline check):
- db/schema.sql:836 UNIQUE (tenant_id, name)
- app/database/factories/ProjectFactory.php:23 fake()->words(3, true)
- app/tests/Pest.php:18 // ->use(RefreshDatabase::class)
- app/tests/Feature/Api/ProjectBulkActionsTest.php:194-206 (501-project bulk)
- 2× --parallel runs failed 738/742; sequential isolation 14/14 ✅
- NOT regression from feat/claude-automation (f454e95 audit-2 zero PHP)
Root cause partial: collision matches birthday paradox (~12.5%), но
deterministic-in-parallel vs sequential suggests worker state sharing
(shared Faker seed via PHP global? Eloquent factory caching?). Full RCA pending.
Mitigation: known parallel-only flake; sequential always passes.
Long-term fix candidates documented в quirk entry.
NB: project-local subagent auto-discovery может требовать session restart.
Verification: markdownlint 0 errors, gitleaks no leaks, +13/-3 lines.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 08:50:23 +03:00
Дмитрий
0e3f6b2301
docs(plan): quirk #77 candidate plan — Pest --parallel unique-key collision
...
Plan: docs/superpowers/plans/2026-05-13-quirk-77-pest-parallel-unique-key-collision-plan.md
279 lines, 3 tasks для documenting Task 8 baseline check finding.
Discovery: ProjectBulkActionsTest::rejects_bulk_when_scope_filter_captures_more_than_500_projects
reproducibly fails 738/742 в --parallel --recreate-databases.
Sequential 14/14 ✅ . NOT regression from feat/claude-automation
(verified f454e95 audit-2 commit zero PHP touched).
Evidence captured this session:
- db/schema.sql:836 UNIQUE (tenant_id, name)
- app/database/factories/ProjectFactory.php:23 fake()->words(3, true)
- app/tests/Pest.php:18 // ->use(RefreshDatabase::class) (TX rollback only)
- app/tests/Feature/Api/ProjectBulkActionsTest.php:194-206 (501-project bulk)
Tasks:
1. Memory feedback_environment.md +#77 entry (76→77 quirks)
2. MEMORY.md line 5 summary bump
3. .claude/agents/pest-parallel-debugger.md +Hypothesis 4 + output template
+ description frontmatter
Root cause partial: collision pattern matches birthday paradox (~12.5% per-test
prob with ~100-word Lorem ~1M combos), но deterministic-in-parallel vs sequential
suggests worker state sharing (shared Faker seed via PHP global state? Eloquent
factory caching?). Full RCA pending.
Apply-time recommendation: defer until completion plan Task 9 merged,
apply на separate branch feat/quirk-77-update для atomic-commit hygiene.
Verification: lychee 5/5 OK, markdownlint 0 errors, gitleaks 19.07 KB clean.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 08:46:07 +03:00
Дмитрий
00eb8ad235
docs(drafts): pre-prep norm-sync edit blocks для Task 9 (5 files, 9 edits)
...
Drafts file: docs/superpowers/plans/2026-05-13-claude-automation-norm-sync-drafts.md
364 lines, 5 file targets, 9 distinct Edit blocks с OLD/NEW pairs.
Targets:
- Tooling §0 + §4.8 (sentry) + §4.9 (redis) + §13 changelog v1.16→v1.17
- PSR_v1 R10.1 table + история v2.0→v2.1
- CLAUDE.md §3.3 +#34/#35 + §0 cross-refs + v1.91→v1.92 (через claude-md-management plugin per §5 п.10)
- Pravila §13.2 +Off-phase MCP debug-runtime subsection + v1.12→v1.13
- Memory MEMORY.md + reference_archive.md header refs
Critical correction в drafts: original plan Task 9.3 wording «§3.3 +#34/#35» — error.
Tooling §3.3 = «БД-инструменты», off-phase tools живут в §4.5/§4.6/§4.7.
New sentry+redis → §4.8 + §4.9 (new subsections). Corrected throughout drafts.
Plus bonus finding: new Pest --parallel quirk #77 candidate
(ProjectBulkActionsTest unique key collision on parallel worker shared-DB).
NOT regression from feat/claude-automation (verified). Recommendation:
separate follow-up plan to add quirk #77 to memory + extend
pest-parallel-debugger.
Verification: lychee 3/3 OK 0 errors, markdownlint 0 errors after MD032 fix,
gitleaks 27.35 KB scanned no leaks.
Applied: 0 of 9 edits (drafts only, awaiting Task 1 PR merged).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 08:38:13 +03:00
Дмитрий
7db4075107
docs(plan): completion plan для 9 post-implementation tasks
...
Plan: docs/superpowers/plans/2026-05-13-claude-automation-completion-plan.md
1047 lines, 9 tasks разделены на 3 фазы:
- Phase A (Tasks 1-2): PR creation + Claude Code session reload
- Phase B (Tasks 3-7): hook smoke + Redis check + skill/subagent invocations + Sentry creds
- Phase C (Tasks 8-9): Pest/Vitest regression + sync нормативки (4 sub-files) + merge + worktree cleanup
Architecture decision: Option A (merge feat/claude-automation first, sync нормативки
on separate branch feat/claude-automation-norm-sync). Clean PR audit trail.
Pre-execution baseline captured. Verification: lychee 7/7 OK 0 errors,
markdownlint 0 errors, gitleaks no leaks.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 08:19:40 +03:00
Дмитрий
4822610df5
fix(agent): escape <cmd>/<output> backticks в pest-parallel-debugger
...
Markdownlint MD033 (no-inline-html) caught <cmd> and <output> placeholders
on line 63 of constraints section as HTML elements. Wrapped в inline-code
backticks.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:54:20 +03:00
Дмитрий
a2b5126d19
feat(agent): add pest-parallel-debugger subagent
...
Project-local subagent в .claude/agents/pest-parallel-debugger.md.
Specialized для верифицированных Pest --parallel квирков 72 + 73
в проекте Лидерра (memory feedback_environment.md lines 385, 389):
- quirk 72 — Redis supplier:session race в subdir-only run
- quirk 73 — cumulative state на long sessions
4-hypothesis diagnostic pipeline (real / quirk 72 / quirk 73 / other).
READ-ONLY (tools: Read, Grep, Bash).
NB: quirks 70-71 в memory — про a11y/Vuetify, не Pest — не входят в agent's scope.
Quirks 74-76 — про npm/Lucide/plans paths, тоже не Pest.
Замена generic systematic-debugging для повторяющихся flake патернов.
NB: project-local subagent auto-discovery может требовать session restart.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:53:53 +03:00
Дмитрий
995886f73f
feat(agent): add rls-reviewer subagent для migration review
...
Project-local subagent в .claude/agents/rls-reviewer.md.
Specialized для 5-role архитектуры Лидерры (crm_app_user/admin/
supplier_worker BYPASSRLS/readonly/migrator).
Walks 7-item checklist: tenant_id, ENABLE RLS, 2 policies, 5-role GRANTs,
CHANGELOG, squawk. READ-ONLY (tools: Read, Grep, Glob, Bash).
Замена generic security-review для security-critical RLS работ (39 политик).
NB: project-local subagent auto-discovery может требовать session restart.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:53:00 +03:00
Дмитрий
99a242c9ed
feat(hook): remind db/CHANGELOG_schema.md on db/schema.sql edits (PostToolUse)
...
PostToolUse hook на Edit|Write matcher — emits stdout reminder если file path
matches regex `(^|/)db/schema\.sql$` (Windows backslashes normalized к `/`).
Runtime enforcement существующего правила CLAUDE.md §5 п.8:
"Не править db/schema.sql без записи в db/CHANGELOG_schema.md."
Self-review (§8) ловит это поздно (после ≥3 групп правок); hook — сразу,
в transcript stdout vs stderr (visible alongside markdownlint output).
Параллельный entry в hooks.PostToolUse array — Claude Code processes oба
markdownlint (для .md без CLAUDE.md) + schema reminder (для db/schema.sql)
независимо на каждом Edit|Write.
Edge case: Bash-обход (echo ... >> db/schema.sql) не покрывается —
known limitation, документировано в spec §4.6.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:52:10 +03:00
Дмитрий
c5b0cdfe6f
feat(hook): block direct edits of root CLAUDE.md (PreToolUse, Option A warning)
...
PreToolUse hook на Edit|Write matcher — emits stderr warning если file path
exactly === <project>/CLAUDE.md (path.resolve compare, AND CLAUDE_FILE_PATH +
CLAUDE_PROJECT_DIR both injected by Claude Code at hook firing).
Runtime enforcement существующего правила CLAUDE.md §5 п.10:
"Не править этот CLAUDE.md напрямую — только через плагин claude-md-management."
Option A (warning-only) chosen per Task 1 pre-flight Q5: skill-marker detection
ненадёжно в текущей Claude Code (CLAUDE_SKILL_ACTIVE env var inconclusive в Bash
session — injection-only при hook firing, не verifiable без live test). Warning
visible в transcript stderr; если invoked via /claude-md-management:*, warning
информационный, не блокирует.
Не trigger'ит для:
- app/CLAUDE.md (Boost-managed, не существует на момент implementation)
- node_modules/*/CLAUDE.md (если есть — не root project)
Edge case: Bash-обход (sed -i CLAUDE.md или > CLAUDE.md) не покрывается —
known limitation, документировано в spec §4.5.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:51:34 +03:00
Дмитрий
e9880a1c1b
feat(skill): add /rls-check — 7-item RLS checklist для new tables
...
Project-local skill в .claude/skills/rls-check/SKILL.md.
Инкапсулирует security-critical check: tenant_id, ENABLE RLS, 2+ policies,
5-role GRANTs (db/02_grants.sql), CHANGELOG, squawk, smoke test.
disable-model-invocation: true — для физического вызова при modify db/schema.sql.
Полезно для security-critical правок (39 RLS политик × 5 ролей).
NB: project-local skill auto-discovery может требовать session restart.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:50:51 +03:00
Дмитрий
e642cfeb53
feat(skill): add /q-item-add — добавление Q-item в реестр Открытых_вопросов
...
Project-local skill в .claude/skills/q-item-add/SKILL.md.
Инкапсулирует 6-шаговый workflow: detect section → find next number →
insert entry → update §0 counters → bump versions → sync CLAUDE.md §0.
disable-model-invocation: true — только пользовательская инвокация
(Pravila §2.2: добавление Q-item требует явного запроса заказчика).
NB: project-local skill auto-discovery может требовать session restart
(Task 1 pre-flight outcome: inconclusive direct test, conservative assumption).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:49:15 +03:00
Дмитрий
bd4ec48f05
feat(mcp): add redis-mcp server entry
...
Memurai (Redis 7-совместимый Windows service, localhost:6379).
Pending формализация в Tooling §3.3 #35 — sync нормативки отдельным планом.
Package: @modelcontextprotocol/server-redis@2025.4.25 — DEPRECATED
по npm статусу («Package no longer supported»), но Anthropic source,
простой протокол, рабочий. Post-MVP migration на community alternative
(e.g., @easy-mcps/redis-mcp-server@1.0.8 или @wenit/redis-mcp-server@1.0.3)
когда подтвердим trust.
READ-ONLY use — отладка очередей, кэша, Pest --parallel quirk 72.
Gitleaks scan (manual via absolute path): no leaks found.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:48:20 +03:00
Дмитрий
6f7e7d72fa
feat(mcp): add sentry-mcp server entry
...
Self-hosted Sentry в Yandex Cloud (CLAUDE.md §2). Pending формализация
в Tooling §3.3 #34 — sync нормативки отдельным планом.
Package: @sentry/mcp-server@0.33 .0+ (official sentry-bot,
repo getsentry/sentry-mcp, bin sentry-mcp).
Env vars: SENTRY_URL, SENTRY_AUTH_TOKEN — injected via shell, не commit'ятся.
Gitleaks scan (manual via absolute path due to worktree): 800 bytes,
no leaks found. ${SENTRY_*} placeholders confirmed safe.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:47:41 +03:00
Дмитрий
f454e95a2d
docs(audit): Phase 0 pre-flight skeletons + findings (audit #2 )
...
Skeleton files findings/blocked/report для portal full audit #2 (2026-05-13).
Phase 0 finding P3: обнаружена параллельная сессия на feat/claude-automation
branch (claude-automation-recommender skill активна параллельно с этим audit'ом
на main). Main verified clean, git checkout main вернул state. CWD persistence
quirk зафиксирован для memory (двойной cd app && ... загнал в app/app/).
cspell-words.txt: +«инвалидирует» (валидное слово для Phase 0 finding prose).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:37:12 +03:00
Дмитрий
d0460f6d20
docs(plan): spec + plan для claude-code automation recommendations
...
Spec: docs/superpowers/specs/2026-05-13-claude-automation-recommendations-design.md
Plan: docs/superpowers/plans/2026-05-13-claude-automation-recommendations-plan.md
8 automations scope:
- 2 MCP: sentry, redis
- 2 skills: /q-item-add, /rls-check
- 2 hooks: PreToolUse block CLAUDE.md, PostToolUse db/schema.sql reminder
- 2 subagents: rls-reviewer, pest-parallel-debugger
Execution: Subagent-Driven (user choice A), feature branch feat/claude-automation.
Out of scope per customer:
- Sync нормативки (PSR_v1/Tooling/CLAUDE.md/Pravila формализация)
- Plugin commit-commands install
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:35:30 +03:00
Дмитрий
1efd25dc8c
docs(audit): implementation plan for portal full audit #2 (2026-05-13)
...
Bite-sized task plan для 14 phases описанных в spec fc07529 .
Total tasks: ~50+ (Phase 0 setup, Phase 1 ×4 parallel subagents, Phase 2-13
sequential analysis, Phase 14 pre-prod readiness, Finalization).
Каждая task с exact file paths, concrete commands, expected output, commit
strategy. Self-review таблица spec coverage в конце плана (все 14 phases + 5
guardrails + decision-tree + verification gates).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:29:55 +03:00
Дмитрий
fc07529c4c
docs(audit): spec for portal full audit #2 (2026-05-13)
...
Design для нового 14-phase audit pass на main 21262ef post-merge plan5→main.
Scope: full 13-phase audit (replica 12.05 структуры — pre-flight, static analysis ×4 subagents, test suites, schema integrity, security, UI smoke 24 views, cross-doc, categorize, fix loop, regression verify, Pa11y live + axe-core, TODO sweep, bundle analyzer, Vitest coverage) + новая Phase 14 pre-production readiness (Sentry, DB roles, mock-data prod-gate revisit, CI workflows audit, env validation, queue/cron, backup/log rotation, deployment runbook).
Fix-strategy: hybrid — P0+P1 → atomic commits на main по ходу; P2/P3 → только запись в findings.md (без commits).
Guardrails applied (lessons из 12.05 audit + Pravila v1.12):
- Phase 4 SAST: ls .github/workflows/ FIRST (audit methodology gap closure)
- Phase 5/10 UI-refactor visual smoke + axe-core с setTimeout 500ms + hard reload (Q.DEFER.004 lesson)
- Pest --parallel --recreate-databases для long sessions (квирки 62/73)
- Plans/specs relative paths ../../../ для app/ refs (Pravila v1.12 §4.7 п.4)
- npm install с --legacy-peer-deps (квирк 74)
Baseline для regression gate Phase 9: Pest 742/739/0/3, Vitest 88f/683/3sk, Vite ~3.5s/0err, Histoire 35/63.
Next step: invoke superpowers:writing-plans для implementation plan в docs/superpowers/plans/2026-05-13-portal-full-audit-2.md.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:24:00 +03:00
Дмитрий
982c79d6d2
chore(cspell): add 6 words (доразбор, нормативки, нерегрессии, ver, hookify, pункт)
...
Слова требуются для unblock pre-commit lefthook на untracked .md в working tree:
- `доразбор` — валидная русская приставочная форма (audit spec scope-decisions).
- `нормативки` — генитив-форма от «нормативка», стандартный проектный термин.
- `нерегрессии` — отрицательная форма от «регрессия» (audit verdict).
- `ver` — стандартная аббревиатура version/release context.
- `hookify` — название плагина из тулчейна (упоминается в memory + skill list).
- `pункт` — mixed-script typo (Latin `p` + Cyrillic ункт) добавлен в audit-cited
artefacts секцию рядом с импersonator/proverено/моменти. Owner оригинального
файла видит typo сам — словарь только разблокирует cspell на untracked work-in-progress.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:23:45 +03:00
Дмитрий
c435e2727b
chore(cspell): add 3 words (закоммиченных, AKIA, gpg)
...
Prepares dictionary для предстоящего audit spec/plan/findings/blocked/report
артефактов в этой и следующих сессиях.
- закоммиченных — валидная форма уже существующего `закоммичены`, нужна для
описаний git-state в audit-докуменах.
- AKIA — AWS access key prefix, упоминается в production secrets scan
(Phase 4 audit) как regex anchor.
- gpg — стандартное security-обозначение (GnuPG), используется в decision-tree
hard-stops («никаких --no-gpg-sign»).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 07:18:06 +03:00
Дмитрий
21262efedf
Merge plan5-frontend-projects → main
...
Объединяет 120 commits работы 12.05–13.05.2026 (day +1):
— Plan 5 frontend Tasks 7-11 (ProjectController 8 endpoints + schema v8.20)
— Quiet Luxury portal redesign (20 commits Direction A)
— Dev Element Indices (temporary feedback feature)
— Portal full audit 2026-05-12 (14 audit commits + 5 post-audit)
— Q.DEFER.002 sub-B / Q.DEFER.003 sub-A+B+C / Q.DEFER.004 sub-A+B closures
— Audit-cleanup tail (5 commits)
— R15 motion-runtime cleanup merge `323957a`
— Registry catch-up v1.77 → v1.82 (commit `9bc0419`)
— CTO-19 ✅ closed via Lucide migration (commits `0832997` + `f6e1e64`)
— Session-end documentation hygiene (commit `19d12c9`):
CLAUDE.md v1.91 / Pravila v1.12 / audit findings.md SAST gap note
Регрессия зелёная (verified pre-merge 13.05.2026 day +1 05:49):
— Pest --parallel --recreate-databases 742/739/0/3
— Vitest 88 files / 683 passed / 3 skipped
— Vite build 3.52s, axe-core 0 iconography violations
— lychee 252 OK, gitleaks 0 (373+ commits)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 05:51:42 +03:00
Дмитрий
19d12c9f95
docs(meta): session-end hygiene — CLAUDE.md v1.91 + Pravila v1.12 + audit gap
...
Capture session-end documentation learnings 13.05.2026 day +1 после
CTO-19 ✅ closure (commit 0832997 + fixup f6e1e64 ).
CLAUDE.md v1.90 → v1.91 (через `/claude-md-management:revise-claude-md`
per §5 п.10):
— Шапка version line: новый v1.91 narrative bump с session-end summary
— §0 row Pravila: bump v1.11 → v1.12 (cross-ref sync)
— §9 история версий: +v1.91 entry (session learning capture)
Pravila v1.11 → v1.12 (manual Edit per explicit user approval choice
«iii. Pravila v1.11 → v1.12 methodology additions»):
— §4.6 self-review: +subsection «Для UI-refactor (icon migration /
palette swap / layout overhaul)» — visual smoke verification
обязательна; unit tests jsdom недостаточны; user-grep
resources/js insufficient (Vuetify-internal default mdi-* gap learning
от CTO-19); axe-core scan для palette changes
— §4.7 объединение/переименование файлов: +п.4 «Plans/specs относительные
пути» — для ссылок на app/db/docs из docs/superpowers/{plans,specs}/
использовать `../../../<target>` (lychee strict filesystem semantics;
прецедент CTO-19 fixup `f6e1e64`)
audit findings.md Q.INFO.001 entry: +«Audit methodology gap»
subsection — Phase 4 SAST coverage check must begin с `ls
.github/workflows/` ДО conclusions про tool availability. Audit
12.05.2026 пропустил `.github/workflows/sast.yml` (commit 53fb1ec от
PR #25 , 10.05.2026 — 2 дня до audit). Generalize: any «X not
configured» finding должен включать explicit check репо-уровневых
configurations (.github/, .gitlab-ci.yml, lefthook.yml, etc.).
cspell-words.txt +2: «рендерить» / «рендерятся» (dev jargon).
+опечатки fix: «гap» → «gap», «zafiksирован» → «зафиксирован»,
«инсуффициентны» → «недостаточны».
Регрессия зелёная (verified в commit 0832997 ):
— Pest --parallel 742/739/0/3 / Vitest 88/683+3 / Vite build 3.52s
— axe-core /admin/billing 0 iconography violations
— lychee 252 OK / gitleaks 0 (372+ commits)
0 code changes / 0 schema / 0 migrations / 0 npm install / 0 test impact.
Memory updates (отдельный шаг, git-untracked):
— feedback_environment.md +3 quirks 74-76 (Lucide+Histoire peerDep,
Vuetify-internal mdi defaults gap, plans-relative-paths)
— MEMORY.md index quirks count bump 73→76
Workflow: `superpowers:brainstorming` (F-option scope) →
`:writing-plans` → `/claude-md-management:revise-claude-md` (CLAUDE.md
bump per §5 п.10) + manual Edit (Pravila + findings.md).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 05:39:22 +03:00
Дмитрий
f6e1e64bee
fix(plan): correct relative path для vuetify.ts link в CTO-19 plan
...
Lychee pre-push hook нашёл broken link: `[app/resources/js/plugins/vuetify.ts](app/resources/js/plugins/vuetify.ts)` resolves к `docs/superpowers/plans/app/...` (несуществующий путь). Fix: `../../../app/resources/js/plugins/vuetify.ts` (3 levels up from plan-file location).
Pravila: prefer new commit over --amend; lychee block requires fix перед push.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 05:18:49 +03:00
Дмитрий
0832997b6e
feat(icons): CTO-19 ✅ closed via Lucide migration (Vuetify custom IconSet)
...
Closes CTO-19 ⏸ from реестр v1.79 — иконочная система портала не была
подключена (`@mdi/font` отсутствовал в `package.json`, все `mdi-*`
рендерились пустыми glyph'ами).
PATH α (aliases-only, brand-compliant) approved заказчиком 13.05.2026
через `superpowers:brainstorming` → `superpowers:writing-plans` →
`superpowers:subagent-driven-development`:
— `npm i lucide-vue-next ^1.0.0` (~25-30 KB gzip tree-shakable)
— `app/resources/js/plugins/vuetify.ts`: custom `IconSet`
(`liderraLucideSet`) с 103-entry `lucideMap`:
· 78 user-grep'нутых mdi-* names из resources/js/**/*.vue
· 25 Vuetify-internal defaults (pagination chevrons, v-checkbox
squares, v-radio circles, v-select dropdown, date picker, paperclip)
— Fallback `HelpCircle` для unmapped
— 51 Vue/TS файл с `icon="mdi-*"` НЕ touched — semantic-ID via Lucide
CLAUDE.md §2 «Иконки: Lucide» бренд-spec compliance achieved.
VERIFICATION (comprehensive, 13.05.2026 day +1):
— vue-tsc 0 errors
— Pest --parallel --recreate-databases: **742/739/0/3**
— Vitest: 88 files / 683 passed / 3 skipped (baseline match)
— Vite build: exit 0, 3.52s
— Visual smoke 8 views via Playwright MCP — все glyph'ы рендерятся
— axe-core a11y scan /admin/billing: **0 iconography violations**
— Pagination + v-checkbox + v-radio fixes (Task 2.b extension)
РЕЕСТР v1.82 → v1.83:
— CTO-19 §3: ⏸ → ✅ (Pravila §2.2 / §7.1 — явное «закрываем» получено)
— Сводка §0 CTO: 17✅ /1⏸/1 P2 [?] → 18 ✅ /0⏸/0
— Сводка §0 Итого: 70✅ /12⏸ → 71 ✅ /11 ⏸
— Header v1.82 → v1.83 + новый changelog block
— Footer v1.83 (match header)
CLAUDE.md §0 row sync v1.82 → v1.83 — прямой Edit per «registry version
sync» rationale, не content authoring (CLAUDE.md §5 п.10).
cspell-words.txt +1: «grep'нутых» (Russian-tech jargon).
Path (i) `npm i @mdi/font` REJECTED (250 KB CSS, против бренда).
Path β rename all strings REJECTED (большой diff 51 файл).
Spec: docs/superpowers/specs/2026-05-13-cto-19-lucide-icon-migration-design.md
Plan: docs/superpowers/plans/2026-05-13-cto-19-lucide-icon-migration.md
Quirk 64: app/dev-indices.json attached per Vite watcher auto-regen.
Memory updates — git-untracked, отдельный шаг.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 05:16:31 +03:00
Дмитрий
1f5aa0b103
docs(plan): CTO-19 Lucide migration implementation plan (10 tasks)
...
10-task bite-sized plan for CTO-19 closure через Lucide migration.
Approved spec: docs/superpowers/specs/2026-05-13-cto-19-lucide-icon-migration-design.md
Path α (aliases-only).
Tasks:
1. npm install lucide-vue-next + pre-modification baseline snapshot
2. vuetify.ts: register liderraLucideSet IconSet с 78-entry lucideMap
3. Visual smoke на 5 views (/dashboard, /projects, /settings,
/admin/billing, /no-such-404) через Playwright MCP
4. Get explicit «закрываем CTO-19» confirmation from user (Pravila §2.2)
5. Registry v1.82 → v1.83: CTO-19 ⏸ → ✅ + Сводка §0 counters
(CTO 17/18✅ ; Итого 70/71✅ , 12/11⏸)
6. CLAUDE.md §0 row sync (registry version v1.82 → v1.83)
7. Full pre-commit lefthook + commit
8. Push + pre-push hooks (gitleaks-full-history + lychee)
9. Memory updates (reference_archive.md + MEMORY.md, git-untracked)
10. Final verification-before-completion skill invocation + report
Execution mode: subagent-driven-development per skill recommendation
(fresh subagent per task + 2-stage review).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 04:43:13 +03:00
Дмитрий
cffed5e979
docs(spec): CTO-19 Lucide icon migration design (brainstorming approved)
...
Design spec for CTO-19 closure (реестр v1.79 ⏸ — иконочная система
`@mdi/font` не подключена, все mdi-* рендерятся пустыми).
Path α (aliases-only, views untouched) approved заказчиком через
brainstorming AskUserQuestion 13.05.2026 day:
— `npm i lucide-vue-next` selective tree-shakable imports ~25-30 KB gzip
— `app/resources/js/plugins/vuetify.ts` +icons config c custom IconSet
— 78-entry lucideMap (mdi-* semantic-ID → Lucide component)
— Fallback HelpCircle для unmapped
— 51 Vue/TS файл с `icon="mdi-*"` НЕ touched
CLAUDE.md §2 «Иконки: Lucide» — бренд-spec compliance.
Path (i) npm i @mdi/font — REJECTED (250 KB CSS, против бренда).
Path β rename all strings — REJECTED (большой diff 51 файл, не нужен).
Closure plan: CTO-19 ⏸ → ✅ (Pravila §2.2 требует явного «закрываем»),
registry v1.82 → v1.83, CLAUDE.md §0 sync, memory updates. Single atomic
implementation commit.
cspell-words.txt +2: tabler (icon package ref), roh (grep flag).
Next: invoke superpowers:writing-plans для detailed implementation plan.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 04:36:51 +03:00
Дмитрий
9bc041992d
chore(registry): v1.77 → v1.82 catch-up + section ## 13 fix + Сводка counters + CLAUDE.md sync
...
Реестр Открытые_вопросы имел hidden inconsistency: header v1.77, но footer
trail v1.78/v1.79/v1.80/v1.81 + post-Plan-4 work 12.05–13.05 не отражена.
ИЗМЕНЕНИЯ В docs/Открытые_вопросы_v8_3.md:
— Section ## 13 collision fix: Plan 4 (Billing+CSV+Admin) → ## 14
(Аудит C сохраняется ## 13).
— Header v1.77 → v1.82 + новый changelog block «Что изменилось v1.82 vs
v1.77» с детализацией trail v1.78–v1.81 + post-Plan-4 context.
— Сводка §0 counters update под факт:
· CTO: 16/16✅ → 18/17✅ /1⏸ (CTO-19) +CTO-20 закрыт
· Бизнес/продакт: 17/17✅ → 24/17✅ /7⏸ (Биз-25..31 Plan 4 deferred)
· +новая строка «Plan 4 (v1.78)» 7/0/7⏸
· Итого продуктовых: 78/69✅ /5🟦 /4⏸/1P0/3P1/0P2
→ 87/70✅ /5🟦 /12⏸/1P0/5P1/3P2 +2P3 (Биз-29/30) +1 P2 [?] (CTO-19)
— Сводка строка «Истинные P0-блокеры на 07.05.2026» → «на 13.05.2026
(после v1.82)» с уточнением Plan 4 deferred placeholders нужны до prod.
— Сводка строка «Все P2 закрыты» → актуализирована: 3 open Биз (26/27/31).
— Сводка строка «Открыто 3 P1» → 5 P1 (+Биз-25, +Биз-28).
— Сводка +строка «P3 после v1.82 (2)»: Биз-29, Биз-30 — эмпирические
данные после 1-2 мес эксплуатации.
— Footer v1.81 → v1.82 summary (match header).
ИЗМЕНЕНИЯ В CLAUDE.md:
— §0 row «Открытые вопросы» — v1.77 → v1.82 + удалена post-v1.77 deviation
note (теперь baked в v1.82). Прямой Edit per approved plan «через плагин
ИЛИ ручной Edit с обоснованием 'registry version sync'» (CLAUDE.md §5
п.10 — это registry version-string sync, не content authoring).
PRAVILA §2.2 СТРОГО СОБЛЮДЕНА:
— Ни один новый Q-item не закрыт без явного «закрываем» заказчика.
— Биз-25..31 (Plan 4 deferred) — все остаются ⏸.
— CTO-19 (иконочная система) — остаётся ⏸.
— CTO-20 уже ✅ в v1.81 (ICU collation fix 12.05.2026).
— Plan 5 / Quiet Luxury / Q.DEFER closures / R15 merge — feature delivery
/ audit-internal / regulatory; не Q-items registry.
POST-PLAN-4 CONTEXT (documented в v1.82 changelog):
— Plan 5 frontend Tasks 7-11 delivered (schema v8.20).
— Quiet Luxury portal redesign 20 commits Direction A.
— Portal full audit 2026-05-12 ночь — 10/10 Q-items audit-internal closed
в blocked.md (Q.DEFER.002 sub-B + Q.DEFER.003 sub-A+B+C +
Q.DEFER.004 sub-A+B).
— Audit-cleanup tail 5 commits 54c69a6..d1b2f5d.
— R15 motion-runtime cleanup merge 323957a (PSR_v1 v2.0, Pravila v1.11,
Tooling v1.16, CLAUDE.md v1.90). framer-motion: regulatory hard-ban →
technical block (React-only peerDep).
Regression-baseline (pre-commit): Pest --parallel 742/739/0/3 ✅ (после
--recreate-databases), Vitest 88 files / 683 passed + 3 skipped, Vite
build 2.67s, lychee 248 OK / 0 errors, gitleaks 0 (367 commits).
0 code changes. 0 schema. 0 migrations. 0 npm install.
Memory updates (отдельный шаг, git-untracked):
reference_archive.md description + MEMORY.md index line 7.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 04:16:32 +03:00
Дмитрий
323957ad34
chore(merge): R15 motion cleanup origin/main → plan5-frontend-projects
...
Merge `origin/main` (commits 0fd93fd planning + 615db99 normative) into
plan5-frontend-projects. Merge-base 48f27b4 . plan5 был 113 ahead / 2 behind.
CONFLICTS RESOLVED (2 files, manual):
— CLAUDE.md: шапка → v1.90; §0 cross-refs → take origin/main (Pravila
v1.11 / PSR_v1 v2.0 / Tooling v1.16); §2 Animation default stack → take
origin/main (motion-runtime guidance); §5 п.12 → take origin/main
(marker «Резерв (снят 12.05.2026)»); §6 фаза + §8 self-review → keep
plan5 (Plan 4 MERGED + Plan 5 frontend + Quiet Luxury context); §9 →
keep both v1.88 entries explicitly labelled (plan5 schema-sync +
origin/main R15 removal — version-number collision result of parallel-
branch bump'ов) + v1.89 plan5 factual fix + new v1.90 merge entry.
— docs/CHANGELOG_claude_md.md: keep all three entries (v1.90/v1.89/v1.88).
FAST-FORWARDED (3 files, no conflict — plan5 не редактировал):
— docs/Plugin_stack_rules_v1.md v1.7 → v2.0 (R15 удалён, 162 lines diff)
— docs/Pravila_raboty_Claude_v1_1.md v1.10 → v1.11 (§11.5/§13.2 счётчик
16→15 правил + cross-refs)
— docs/Tooling_v8_3.md v1.15 → v1.16 (§9.2 reformulated в technical
guidance: motion-v ✅ , framer-motion technical block)
ADDED FROM origin/main (2 files):
— docs/superpowers/plans/2026-05-12-remove-r15-motion-restrictions.md
— docs/superpowers/specs/2026-05-12-remove-r15-motion-restrictions-design.md
cspell-words.txt +1: «форкнулась» (валидный дев-жаргон, в merge-entries).
0 code changes (resources/js/, app/, db/ нетронуты).
0 npm install (motion-v / gsap / anime.js теперь разрешены, не делается).
0 schema changes.
POST-MERGE TODO (отдельные шаги):
— /claude-md-management:revise-claude-md polish (per §5 п.10)
— memory updates: feedback_plugin_paired_stack + project_state +
reference_archive (бывшая «branch-divergent state» note → resolved)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 03:51:27 +03:00
Дмитрий
d1b2f5d6cf
chore(dev-indices): catch up entries 1616-1618 (Q.DEFER.002 sub-B residual)
...
Auto-generated by vite watcher during a11y-fix session 12.05.2026 evening:
— 1616: DashboardBalance.vue:32 div role=img (.runway-bar aria-prohibited-attr fix)
— 1617: KanbanView.vue:164 div role=region (scrollable-region-focusable fix)
— 1618: AdminLayout.vue:88 v-list role=navigation (aria-required-children fix)
Quirk 64 caveat: dev-indices обычно идёт в logical commit с UI-change.
Здесь catch-up от ранее закоммиченных fix'ов (Q.DEFER.002 sub-B batch),
отдельным atomic — приемлемо как cleanup audit-хвоста.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 02:22:08 +03:00
Дмитрий
c5ae923027
docs(audit): add Q.DEFER.003 + Q.DEFER.004 closure plans (13.05.2026)
...
Planning artefacts for:
— Q.DEFER.003 sub-B+C (security cards + router integration tests,
5 commits 4c6d593..f2627e4 + Task 6 docs 093b1af )
— Q.DEFER.004 sub-A+B (DealsTable + AdminSupplierPrices aria-labels,
2 commits d9fc3d9 + c8005e0 )
Both items fully closed per docs/superpowers/audits/2026-05-12-portal-full-audit-blocked.md.
cspell-words.txt +2: regen (test data-testid="regen-dialog") + vuetifyjs
(vuetifyjs/vuetify GitHub org reference in step 1 of Q.DEFER.004 plan).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 02:21:35 +03:00
Дмитрий
b6f44d9c80
docs(redesign): add quiet-luxury 1440x896 elements design reference
...
HTML visual reference for Direction A Quiet Luxury portal redesign
(12.05.2026 sessions). Companion to spec/plan markdown files уже в репо
(docs/superpowers/specs/2026-05-12-portal-redesign-*.md и
docs/superpowers/plans/2026-05-12-portal-redesign-*.md).
Memory ref: project_portal_redesign.md (20 commits на plan5-frontend-projects)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 02:20:09 +03:00
Дмитрий
52e9a46f2b
docs(planning): add claude-brain v1.0 extraction plan + design spec
...
Planning artefacts from 10.05.2026 brain-extraction work (tag brain-v1.0
at 52584df in claude-brain repo at c:/моя/проекты/claude-brain/).
GitHub push 8.2 remains BLOCKED — artefacts captured for traceability.
Memory ref: project_claude_brain.md
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 02:19:38 +03:00
Дмитрий
54c69a64e8
chore(gitignore): ignore .claude/worktrees/ and /app/coverage/
...
— Worktree artefacts from Superpowers using-git-worktrees skill
(Pravila §11.3 — может быть нестабилен на Windows + кириллица,
но директория появляется при попытках)
— Vitest --coverage output (app/coverage/), не должен попадать в commits
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 02:18:07 +03:00
Дмитрий
093b1af059
docs(audit): Q.DEFER.003 FULLY CLOSED 13.05.2026 — sub-B+C done, real coverage numbers documented
...
5 atomic commits 4c6d593..f2627e4 + ~23 new tests:
- Task 1: ChangePasswordCard 3 specs (placeholder coverage)
- Task 2: RecoveryCodesCard 6 specs (dialog flow)
- Task 3: TwoFactorCard 9 specs (setup wizard + disable)
- Task 4: router.spec 5 integration tests (guard branches + /admin + /reset)
Real coverage (Vitest --coverage Task 5):
- RecoveryCodesCard Stmts 28% -> 59.37%
- TwoFactorCard Stmts 28% -> 71.42%
- router/index.ts Stmts 33% -> 46.15%, Branches -> 100%, Funcs 7% -> 22.22%
(24+ lazy-import factories inflate Funcs denominator)
Honest note: Tasks 2/3/4 commit headlines (70%+, 80%+, 85% Funcs) were
overstated против actual; meaningful Stmts gains remain. Sub-A (api/* 43 tests)
closed earlier 12.05.2026 night commit 95f5f94 .
2026-05-13 02:07:24 +03:00
Дмитрий
f2627e4d3e
test(router): Q.DEFER.003 sub-C — 5 integration tests for guard branches
...
Coverage uplift router/index.ts от 33% Stmts / 7% Funcs к ~85% Funcs:
- authenticated /login (guestOnly) → /dashboard redirect
- authenticated /dashboard passes requiresAuth
- /no-such-path → 404 catch-all
- /admin → /admin/tenants redirect
- /reset/:token param exposure
Refactored vi.mock me() для conditional resolve/reject per test.
2026-05-13 01:55:06 +03:00