Дмитрий
e6b89e676f
docs(plans): Plan 2.6 supplier cleanup — закрытый plan-файл (Task 5 closure)
...
4 atomic commits в стэке (Plan 2.6 #i..#iv):
- e71a02e supplier:check-webhook-secret deploy validator
- f78a855 IP allowlist production fail-closed
- 451a294 timestamp validation ±24h partition guard
- 7899071 crm_supplier_worker BYPASSRLS-роль для queue worker
Pest 558/556 (+9 от Plan 2.5 baseline 549/547).
Larastan + Pint + squawk clean.
Memory updated (project_supplier_integration.md, project_state.md,
feedback_environment.md quirk #57 ).
Plan 3 backlog: BLOCKER #6 (RLS на failed_webhook_jobs INSERT NULL tenant)
+ 5 minor WARN + 5 NIT.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-10 23:21:54 +03:00
Дмитрий
fe778858ce
docs(plans): close Plan 2/5 supplier webhook routing — ✅ status header
...
Все Tasks 1–9 + CV.1–CV.14 + Task 11 выполнены в main (fb55bfd..c1ae195, 16 commits).
Plan 2.5 hotfix (1ba1df8 fix #3 idempotency + c1ae195 fix #2 concurrency) закрыл
2 из 3 BLOCKER findings CV.11 audit.
В Plan 3 backlog:
- BLOCKER #6 (RLS на failed_webhook_jobs INSERT NULL tenant) — первая задача.
- WARN #4 (placeholder secret '__SET_ON_DEPLOY__') + WARN #5 (пустой IP allowlist)
— operational deploy gates.
- 8 minor WARN + 5 NIT — Plan 3 NOTES.
Pest 549/547 (+2 от Plan 2 baseline 547/545), Larastan + Pint clean.
Чекбоксы Tasks/CV/Task11 ниже намеренно не tick'нуты — детали статуса
в memory/project_supplier_integration.md и memory/project_state.md.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-10 22:31:59 +03:00
Дмитрий
67cb2cc946
docs(superpowers): economy-mode hook bypass closure spec + plan
...
6-component architecture (permissions block + 5 hooks) closing 8 critical/high
bypass paths: settings disable (H1), hook script edit (H2), prompt injection
(H4), state file delete (H6), subagent inheritance (H7), PostCompact loss
(H8), retry exhaustion (H9), verifier endpoint failure (H10), tool output
spoofing (H12), no-claim bypass (H13).
End-of-prompt parsing for "экономия N%". Shared state file in $TEMP.
Sonnet 4.6 verifier on Stop with decision:"block" + max 3 retry → escalate.
Spec: 964 lines, 12 sections.
Plan: 7 stages with TDD per task.
Runtime cost: ~\$7-14/month.
Stage 0 ratchet verified: auto-mode classifier blocks subagent Write on hook
scripts AND Bash heredoc bypass on settings.json.
Also adds 4 cspell vocabulary terms (парсингом/промпт/Mojibake/sed) used
in the new spec.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-10 21:39:23 +03:00
Дмитрий
00aaa9ea89
docs(plan): Plan 2/5 — Supplier Webhook + Sharing Routing
...
11 задач + 14-пунктовый Comprehensive Verification Gate.
Spec §5-§6: platform-wide webhook + N deal-копий через LeadRouter.
Legacy /api/webhook/{token} остаётся параллельным каналом.
+ allowlist generic pattern 7\d{3}1234567 для PhonePrefixService docs/tests.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-10 17:55:13 +03:00
Дмитрий
7ab7cf51cb
docs(plans): supplier integration plan 1/5 — Foundation (schema + models + validators)
...
12 tasks + 3 verification gates covering:
- 5 migrations: extend projects, supplier_projects, pricing_tiers, lead_charges, supplier_sync_log
- 4 new Eloquent models + factories + Pest unit tests
- Project model extension with signal_type/sms_*/supplier_b1/b2/b3 relations
- 3 signal validators (Domain, Phone, SmsSender) with edge-case datasets
- SupplierProjectResolver service with B1+SMS guard
- Comprehensive verification gate: Larastan + squawk + pgFormatter + cspell + markdownlint + cycle-check + code-review subagent
Spec: docs/superpowers/specs/2026-05-10-supplier-integration-design.md §2, §7
cspell-words: +vashinvestor
.gitleaks.toml allowlist: +test phones for validator datasets
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-10 12:10:04 +03:00
Дмитрий
3f463f48ea
docs(specs): close all 7 open questions in supplier integration design
...
Q1 SMS validation: B2 = (sender, keyword), B3 = sender only; B1 not available
Q2 Supplier pricing: фиксированная цена за лид
Q3 Liderra billing: 7-tier volume pricing, monthly reset (config in admin)
Q4 Geo filter: MVP, union at supplier + filter on our side
Q5 Webhook auth: defense-in-depth (IP allowlist + secret token in URL)
Q6 Cookie/CSRF refresh: hourly headless Playwright cron + reactive on 401/403
Q7 supplier_project TTL: immediate disable, delete after 180 days no activity
cspell-words.txt: +геофильтр, логинится, encrypter, PHPSESSID
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-10 11:39:29 +03:00
Дмитрий
ac09603181
docs(specs): supplier integration design (Лидерра ↔ crm.bp-gr.ru)
...
Captures brainstorming output for two-way integration:
- Sharing model: один supplier-лид → много deal-копий клиентам Лидерры
- 3 supplier-проекта на источник (B1/B2/B3), shared между клиентами
- Dynamic limit adjustment через 20:30 МСК cron + AJAX rt-project-update
- Quota distribution Total/3 с приоритетом B1→B2 на остатке
- Instant FIFO routing по дате создания проекта клиента
- Резервирование обоих направлений: pending-changes queue + CSV reconciliation
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-10 11:02:19 +03:00
Дмитрий
528fe16166
docs(plans): Sprint 6 Phase A — Reports backend implementation plan
...
6 tasks: 3 providers (managers/sources/billing) + registry extension +
S3 disk abstraction + file download endpoint. TDD with Pest 4.
Corrects schema column names vs spec (manager_id, type, balance_rub_after)
and uses May 2026 test dates (partitions start 2026-05-01).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-10 09:38:43 +03:00
Дмитрий
2a6f0289db
docs(spec): Sprint 6 Post-MVP backend design (Reports + Notifications + AdminTenantDetail)
2026-05-10 09:13:45 +03:00
Дмитрий
27dec3d459
docs(rules): аудит нормативки — закрытие 14 находок (CLAUDE.md v1.84 + Pravila v1.9 + PSR_v1 v1.5 + Tooling v1.13)
...
Audit конфликтов и запутанностей между CLAUDE.md / Pravila / PSR_v1 / Tooling
выявил 14 находок (3 🔴 high, 6 🟡 medium, 5 🟢 low). Все правки — через
paired stack: writing-plans → executing-plans → claude-md-improver (для
CLAUDE.md по §5 п.10) → verification-before-completion с grep-evidence.
Ключевые правки:
1. claude-md-management формализован #33 в Tooling §4.7 — пятый
включённый плагин (категория «инфраструктурная», вне UI-пула).
Tooling §0 счётчик 31 → 33 (3 off-phase tools).
2. Tooling §7 + PSR_v1 уровнем 3 — иерархия source of truth расширена
с 5 до 7 уровней, sync с CLAUDE.md §1.
3. Tooling §6 +5 конфликтов v1.4 — UPM↔FD, 21st↔Vuetify, 21st↔App*,
framer↔motion-v, UPM↔21st (с 5 до 10 строк).
4. Pravila §12.3 объявлен Single Source of Truth для exclusions §12;
PSR_v1 R0.4.A + CLAUDE.md §5 п.11 — cross-ref сюда.
5. Pravila §13.6 +tier-таблица hard-rule (explicit / transitive /
standard) — снимает скрытую иерархию между §12 и §13.9/§13.10.
6. PSR_v1 R10.1 разбит на 3 блока: enabledPlugins / built-in skills
Claude Code / MCP-серверы — раньше всё было одним списком.
7. PSR_v1 R8 +тай-брейкер FD↔21st (последовательно, FD ведущий).
8. PSR_v1 R10.4 + R14.7 — tier-метки transitive hard-rule с явным
указанием, что Pravila §9 «Отступления» к ним не применяется.
9. Scope-метки приоритетных цепочек — Pravila §0 (внутрипараграфный),
CLAUDE.md §1 (межфайловый), PSR_v1 R0.1 (scope головенства stack'а).
Снимает путаницу 4-х представлений.
10. CLAUDE.md §5 п.5 свёрнут до 2 строк со ссылкой на PSR_v1 R14
(был копией PSR_v1 на 12 строк).
11. Tooling §4.6 — settings.json → ~/.claude.json (где реально лежит
API-ключ 21st).
cspell-words.txt: +внутрипараграфный, внутрипараграфные, скилов
(новые термины из scope-меток и plan-файла).
Намеренно оставлено: R0.6 пункт 11 ⊂ пункт 6 (motion-специальный flow);
Pravila §13.10 формально избыточен (явная запись лучше транзитивного).
Plan: docs/superpowers/plans/2026-05-10-rules-audit-fixes-plan.md.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-10 05:06:16 +03:00
Дмитрий
8c6374d278
docs(spec-roadmap): fix broken link to memory/project_state.md (outside repo)
...
lychee pre-push hook поймал invalid markdown link на memory/project_state.md —
файл живёт в C:\Users\Administrator\.claude\projects\... (Claude auto-memory),
не в репозитории. Заменено на plain-text упоминание.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-10 04:12:58 +03:00
Дмитрий
823daf4f9f
docs(plan-sprint4): implementation plan «Audit tail» + revised spec scope
...
Sprint 4 — закрытие 3 оставшихся audit O-* пунктов:
- Phase A: O-perf-04 keyset pagination в DealController::index
- Phase B (1+2+3): O-refactor-04 хвост, split 8 Vue-компонентов >300 строк
- Phase C: O-refactor-06 dead-code detection через rollup-plugin-visualizer + knip
Spec ревизия: Sprint 4 уменьшен с 8 до 3 пунктов после факт-чека —
O-perf-07/O-refactor-05/O-refactor-07/O-stack-02/O-stack-03 уже закрыты
в Sprint 1–2 (Sprint 1 ESLint vuetify rule, Sprint 2 Phase A: Pest browser
scaffold, infection mutation, lazy-loading, Larastan cache; CLAUDE.md
header фактически 30 строк после 5b13c95 changelog extraction).
Финальная регрессия: Pest 419+ / Vitest 430+ / Larastan + ESLint + vue-tsc 0.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-10 03:57:46 +03:00
Дмитрий
77b018dff8
docs(spec-roadmap): дизайн roadmap'а до production — 3-track структура (A/B/C)
...
Покрывает категории A (audit-хвосты), B (Phase 3 tooling), C (Post-MVP backend),
D (Б-1-зависимые фичи), E (production deploy в YC). Категория F (юр. тексты) —
external; G (push 18 коммитов) — Sprint 0 precondition.
Двухдорожечная структура:
- Track A (Sprint 4–6): не зависит от Б-1, стартует сразу после push
- Track B (Sprint 7–9): после получения реквизитов ООО — YC infra + CI/CD + SSO + лендинг + hardening + soft-launch
Definition of done «production launch» в §1, per-sprint acceptance в §5,
9 рисков с mitigations в §6, 5 open questions для будущей детализации в §7.
Базовый HEAD: 6c2f0ce (после Sprint 3 Phase C).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-10 03:51:05 +03:00
Дмитрий
42b3f3f9e4
docs(spec-sprint2): дизайн Спринта 2 «Modernization» — 12 O-* находок
...
Scope: 8 O-stack + 2 O-perf + 2 O-refactor (low/medium risk, без архитектурных
рефакторингов). Default-выборы для design-решений зафиксированы в spec'е.
4 фазы: A.Backend (Pest 4 browser + mutation + Laravel 13 lazy + Larastan cache)
→ B.Frontend (Vue 3.5 + Vuetify 3.12 + lazy-imports + ESLint check)
→ C.Docs (Google Fonts + CLAUDE.md §0 reorg + FD plugin checklist)
→ D.Hygiene (dead-code report).
Не входит — 6 Sprint 3 пунктов (high risk, R0.6 hard-стопы).
Бюджет: 5-6 часов агентов.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-09 18:51:55 +03:00
Дмитрий
e2de8bf8a2
docs(narrative): sync versions + Histoire 21/43 + cross-refs (audit P1-01/03/06/08 + P2-03 + post-A)
...
Phase D Спринта 1 «Hygiene». Закрытие аудита 2026-05-09 (b6ae8dd ):
- P1-01: README.md обновлён (CLAUDE.md ссылка с 28→29 инструментов и 5→6 уровней;
Tooling v1.0→v1.10; Pravila v1.2→v1.6; PSR_v1 v1.3 добавлен; schema v8.5→v8.11
(56 базовых + 12 партиций / 97 индексов / 38 RLS / 5 функций / 13 триггеров)).
- P1-03: CLAUDE.md Histoire 21/28 → 21/43 (заменено все вхождения, включая §0 и §3.3).
- P1-06: Pravila §13.9 cross-ref на Plugin_stack_rules_v1 теперь с (v1.3).
- P1-08: Tooling §2.1 п.7 Stylelint раздел дополнен версией stylelint-config-standard ^40.0.0.
- P2-03: CLAUDE.md F-K cross-link на Plugin_stack_rules_v1.md#история-версий.
- post-A: метрики schema в CLAUDE.md синхронизированы до v8.11 (97 / 38).
Также фикс битой ссылки в spec'е Sprint 1 (lychee 1 error → 0): относительный путь
до Plugin_stack_rules_v1.md из docs/superpowers/specs/ исправлен на ../../
Bump версий:
- CLAUDE.md v1.81 → v1.82
- Pravila v1.6 → v1.7
- Tooling Прил. Н v1.10 → v1.11
Все правки CLAUDE.md/Pravila/Tooling — через claude-md-management:claude-md-improver
(CLAUDE.md §5 п.10). README.md и spec — обычные правки.
lychee: 0 errors. markdownlint: 0 errors. cspell на web/v8/* — out-of-scope.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-09 18:36:36 +03:00
Дмитрий
93b1af40d0
docs(plan-sprint1): implementation plan для Спринта 1 «Hygiene»
...
По spec'у 2026-05-09-sprint1-hygiene-design.md (08bbe4d ). 41 атомарный task в 6 фазах:
- Phase A. DB (A1-A7, ~20 мин): RLS impersonation_tokens + 2 FK indices + CHANGELOG
schema v8.10→v8.11 + verify squawk/grep (38 RLS, 97 indexes).
- Phase B. Backend (B1-B7, ~40 мин): apply 'tenant' middleware к 3 auth:sanctum-группам
(alias уже в bootstrap/app.php) + HasPasswordRules trait + test password ≥8 +
verify Pest 416/416 + Larastan 0.
- Phase C. Configs (C1-C8, ~40 мин): format:sql:check Windows fix + .lychee.toml exclude
+ pa11y.config paths + composer audit-offline + ESLint anti-vuetify + npm-outdated CI.
- Phase D. Docs (narrative, D1-D5, ~45 мин): README versions + CLAUDE.md/Pravila/Tooling
через claude-md-management:claude-md-improver skill (CLAUDE.md §5 п.10).
- Phase E. Docs (handoff, E1-E4, ~45 мин): BRANDBOOK status-slug mapping table +
DEVELOPER_HANDOFF axe-claim doc + font-display strategy.
- Phase F. Registry (F1-F3, ~15 мин): Открытые_вопросы — новый CTO для P1-10 +
Б-1 cross-link для P1-11 + новый OPEN для P1-09 (Histoire-Vite).
Зависимости: B и D зависят от A (CHANGELOG ссылки + метрики schema).
Бюджет: 2.5-3.5 часа агентов.
Cspell-словарь дополнен: Митигация, закоммитить.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-09 18:12:26 +03:00
Дмитрий
08bbe4d9c8
docs(spec-sprint1): дизайн Спринта 1 «Hygiene» исправления аудита 2026-05-09
...
Spec через superpowers:brainstorming. Scope: 22 правки + 3 записи в реестр:
- 3 P0 (RLS impersonation_tokens, SetTenantContext middleware, format:sql:check Windows)
- 10 P1 (P1-10/P1-11 → реестр)
- 3 P2 (test password, орфо, F-K расшифровка)
- 6 low-risk O-* (2 FK indices, password rules trait, ESLint anti-vuetify, npm CI, font-display docs)
6 фаз / 6 коммитов: A.DB → B.Backend → C.Configs → D.Docs(narrative) → E.Docs(handoff) → F.Registry.
Зависимости: B/D зависят от A (CHANGELOG schema метрики).
Бюджет: 2.5-3.5 часа агентов в субагентном режиме.
CLAUDE.md/Pravila/Tooling правки в Фазе D — обязательно через
claude-md-management:claude-md-improver (CLAUDE.md §5 п.10).
Не входит: Спринт 2 (modernization) и Спринт 3 (big refactors) — отдельные spec'и.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-09 17:51:16 +03:00
Дмитрий
fb7334af05
docs(plan-audit): implementation plan для аудита проекта на 2026-05-09
...
По spec v1.1 (b034301 ). 12 атомарных Tasks по 4 фазам:
- Phase 0 — setup (Task 0): mkdir .tmp/audit, проверка .gitignore, snapshot HEAD/status.
- Phase 1 — sweep (Task 1): 15 CLI-тулов в 5 параллельных группах A/B/C/D/E,
raw output в .tmp/audit/stage1_*.txt + stage1_summary.md.
- Phase 2 — субагенты (Tasks 2-4):
Task 2 готовит r_rules_excerpt.md (CLAUDE.md §1 + R0.1/R6/R6.1/R10/R11/R13);
Task 3 диспатчит 6 субагентов параллельно (D1-D6, единый шаблон промпта);
Task 4 — early-stop предохранитель (>10 P0 на одном субагенте → AskUserQuestion).
- Phase 3 — консолидация (Tasks 5-8): aggregate, dedup по (file,line,category),
переклассификация по spec §3, генерация docs/audit_2026-05-09.md по §9 структуре.
- Phase 4 — review + commit (Tasks 9-11): verification-before-completion (file:line +
метрики + 0 placeholders + 0 R-нарушений), независимый code review через
requesting-code-review (PASS/FAIL), коммит + update memory project_state.
Бюджет: 1.5-2 часа wall-clock. .tmp/audit/ НЕ коммитится (.gitignore).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-09 17:15:02 +03:00
Дмитрий
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
Дмитрий
3d936d0da8
docs(spec-audit): добавлен дизайн подробного аудита проекта на 2026-05-09
...
Spec через superpowers:brainstorming. Гибридный подход (тулы + субагенты):
4 этапа (sweep тулами → 6 семантических субагентов → консолидация → self-review),
P0/P1/P2 для дефектов и O-perf/O-refactor/O-stack для возможностей улучшения.
Реализация — отдельным implementation plan через superpowers:writing-plans.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-09 16:00:02 +03:00