Files
Deal/docs/superpowers/reviews/2026-09-11-docs-final-sweep.md
T
Rustam Khalimov 27c7831910
ci / build-test (push) Canceled after 0s
Deal — единая кодовая база
SaaS-мониторинг Telegram: ядро (модули Cards/Kanban/Pipeline/Tenants/Settings/
Discovery, Api, Infrastructure), сервисы telegram/ai/ml/storage, фронт Vue,
контракты и grpc-hosting, деплой-конфиги (dev/prod/observability/CI-раннер),
Gitea Actions CI, документация (ТЗ, техдок, api-map, код-стайл, планы, бэклог).

Текущее состояние: все этапы роадмапа 0–12 закрыты, сборка 5 sln 0/0,
тесты 1340/130/52/38/9 зелёные.
2026-09-11 23:56:47 +03:00

10 KiB
Raw Blame History

Финальная «подбивка» документации «Дейл» (2026-09-11)

Дата: 2026-09-11 Периметр: все docs/** (актуальные доки — spec/user-guide/technical/api/STATUS; исторические — plans/*, reviews/*, specs/*, старые architecture/*). Метод: сквозной поиск по проблемным терминам (Boards, ProjectCards, Deal.Modules.Projects, ProjectStages, корневой docker-compose.yml, DEAL_DEMO, демо-эндпоинты, l_/pr_, app_settings, «лид» как сущность, старые порты/пути/счётчики тестов) + чтение актуальных доков и сверка с кодом (src/**, deploy/compose.*.yml, scripts/dev-smoke.sh, deploy/observability/grafana/dashboards/). Докер не поднимался, тесты не перезапускались. Предшествующий аудит — 2026-09-10-docs-audit.md (30 расхождений, уже помечен как исторический).

Сводка

  • Найдено новых расхождений: 9 (по таблице ниже).
  • Исправлено в актуальных доках: 9.
  • Добавлено исторических пометок: 20 файлов.
  • Переписывание содержания исторических артефактов не выполнялось (по правилам задачи).

Расхождения (файл:строка → в доке → реальность → действие)

# Файл:строка В доке Реальность Действие
1 docs/superpowers/STATUS.md ~L4 «Все этапы 010 выполнены (100%)» таблица этапов — 012, «Итого 0–12 = 100%» (строка ниже) исправлено на 012
2 docs/superpowers/STATUS.md ~L25 этап 10 — «ELK-дашборды» стек — Loki + promtail + Grafana (deploy/observability/grafana/dashboards/Deal-*.json); Elasticsearch/Kibana нет «Grafana/Loki-дашборды»
3 docs/superpowers/STATUS.md ~L54 «Настройки (ключи AI/Telegram enc:, промпты, валюты)» у тенанта ключи Telegram — глобально у оператора (public.global_settings); у тенанта только подключение аккаунта «ключи AI enc: …; Telegram-ключи — глобально у оператора»
4 docs/superpowers/STATUS.md ~L134 «судьба legacy docker-compose.yml» (открытый вопрос) файл перенесён в archive/leadradar-legacy/ (2026-09-10) «перенесён в archive/leadradar-legacy/»
5 docs/superpowers/STATUS.md ~L141 «Core-тесты 1245/1245» актуально 1275/1275 (в том же разделе ниже уже 1275) исправлено на 1275/1275
6 docs/superpowers/STATUS.md ~L167 «реестр id-стадий ProjectStages» с этапа 9 каталог — CardsDefaultContainers (Deal.Modules.Cards/Application/CardsDefaultContainers.cs) аннотировано «(с этапа 9 — CardsDefaultContainers
7 docs/superpowers/STATUS.md ~L7, ~L94 «dev-smoke 12/12» (в двух местах) scripts/dev-smoke.sh выполняет 14 проверок (config + 6 контейнеров + login/status/containers/create/list/trash/ML-флашер); таблица этапа 9 уже фиксирует PASS=14 исправлено на 14/14
8 docs/technical/Техническая-документация-Дейл.md §8 ~L319 dev-smoke.sh: «… → /api/tg/statussimulate-lead → флашер MlOutbox …» скрипт: /api/tg/statusPOST /api/cards → trash → флашер MlOutbox заменено на POST /api/cards → trash
9 docs/user-guide/Инструкция-пользователя-Дейл.md ~L6, L32-34, L41, L262 «dev/демо-окружение», «демо-пространство с входом admin/admin» демо удалено; dev-seed создаёт bootstrap-тенанта Default (env DEAL_BOOTSTRAP_LOGIN/PASSWORD, дефолт admin/admin) «Dev-окружение», «bootstrap-пространство Default»

Добавленные исторические пометки

Единая шапка: > Исторический документ этапа N. Актуальное состояние — docs/superpowers/STATUS.md и docs/technical/Техническая-документация-Дейл.md.

Планы (docs/superpowers/plans/, 15 файлов): 2026-09-04-channel-discovery.md (план Discovery прототипа LeadRadar), 2026-09-05-deal-roadmap.md (roadmap этапов 07), 2026-09-05-deal-scaffold.md (этап 0), 2026-09-05-deal-stage1-tenancy.md2026-09-05-deal-stage7-saas.md (этапы 17), 2026-09-09-deal-stage9-unified-card.md (этап 9), 2026-09-10-deal-stage10-operator-analytics.md (этап 10), 2026-09-10-deal-stage11-i18n.md (этап 11), 2026-09-10-deal-stage12-observability-hardening.md (этап 12).

Ревью (docs/superpowers/reviews/): 2026-09-08-code-quality-review.md (этап 8), 2026-09-10-tz-compliance-audit.md (аудит соответствия ТЗ), 2026-09-10-docs-audit.md (аудит документации; добавлена ссылка на текущий отчёт).

Специи/архитектура: docs/superpowers/specs/2026-09-04-channel-discovery-design.md (дизайн Discovery прототипа), docs/architecture/2026-09-05-deal-architecture-design.md (архдизайн-черновик), docs/architecture/2026-09-09-unified-card.md (дизайн единой карточки, этап 9).

Не тронуты по существу (актуальны): docs/architecture/2026-09-10-unified-api-contract.md, docs/architecture/2026-09-10-operator-analytics-contract.md.

Проверено и сходится

  • Единый API: /api/cards + /api/containers; api-map §1/§3.5 корректно фиксирует удаление /api/leads|projects|boards|columns и переименование new_lead → new_card; ссылки на «бывшие» домены — в контексте «удалено», а не как действующие.
  • Ключи Telegram: spec §4.1/§8, user-guide §3, api-map §6, technical §13.7/§13.10 — везде у оператора (/api/operator/settings/telegram-keys, public.global_settings).
  • Оператор-консоль/активация: #/operator, #/join?code=… — spec §10, user-guide §11, technical §13.10, api-map — совпадают.
  • Порты: core 5080/5082, telegram 5101, ai 5102, ml 5103, metrics 9464, postgres 5433, minio 9000/9001, grafana 3001, prometheus 9090 — совпадают между spec/user-guide/technical/api и compose-файлами.
  • Core-тесты: 1275 (technical §13.6/§16, STATUS таблица/итоги) — противоречий в актуальных доках нет.
  • Префиксы id: c_ (единый) — api-map §4.1, technical §11/§12/§8; l_/pr_ в актуальных доках отсутствуют (остались только в помеченных исторических разделах и внешних исторических артефактах).
  • app_settings: в актуальных доках нет; актуальная таблица — global_settings (public).
  • Исторические артефакты: Boards/ProjectCards/Deal.Modules.Projects/ProjectStages/DEAL_DEMO/ демо-ручки/docker-compose.yml встречаются только в документах, получивших историческую пометку.

Осталось спорным / намеренно не тронуто

  1. Ссылка из spec на исторический архдизайн. docs/spec/ТЗ-дейл-новая-архитектура.md (шапка) указывает среди связанных docs/architecture/2026-09-05-deal-architecture-design.md — документ теперь помечен историческим. Формально не ошибка (файл существует, помечен), но при следующей редакции ссылку, возможно, стоит заменить на 2026-09-10-unified-api-contract.md.
  2. tgKeys в historical §13.4b технического дока (GET /api/settings перечисляет tgKeys): раздел помечен историческим (§13 шапка + заметка §13.4a о переносе ключей к оператору). По правилам задачи содержание исторических разделов не переписывалось.
  3. Счётчики тестов сервисов (telegram 125, ai 52, ml 38): не перепроверялись кодом/прогоном (запрет на долгие процессы); в актуальных доках они не противоречат друг другу.
  4. «Live SaaS 15/15» — цифра из исторических приёмок, независимо не подтверждалась.
  5. Число операторских ручек (25) в api-map §5 — подсчёт по Endpoints/Operator* + /api/join; группировка может отличаться от авторской (ранее было 21). Не перепроверялось.
  6. Исторический журнал §11 техдока (этапы 17) и §13.4c/4d/4e намеренно сохраняют легаси-термины под пометками; сведение их в ссылки на §3 — задача следующей редакции, а не этой подбивки.
  7. docs/architecture/2026-09-10-* (контракты) по условию задачи не редактировались; они актуальны.