Scope backend MVP¶
Мобильный frontend проектируется как отдельная часть продукта по поручению от 16.09.2026. Его экраны, регистрация, вход, переходы и требования к дизайну описаны в карте мобильного приложения. Исключение frontend ниже относится к границам backend-репозитория.
Актуализация 09.09.2026¶
Приоритет имеют актуальные решения и перечень модулей. Натальная карта остаётся точным расчётом; нумерология и Human Design включены как LLM-сценарии с точными вспомогательными функциями. Алгоритмы выбирает команда. OpenRouter выбран шлюзом переключения моделей, токен получен. Приняты free/paid и скидка 40% на первый месяц; цена и квоты ещё открыты. Оферта и privacy пока заменяются заглушками для разработки. Матрица судьбы и админ-панель остаются pending.
Ниже сохранены детали предыдущего baseline. Формулировки о natal-only, ожидании алгоритмов от заказчика, неполученном токене, OpenRouter только для eval и неутверждённой скидке заменены решениями от 09.09.2026. Это изменение документации, а не отчёт о готовой реализации.
Текущий scope 09.09.2026¶
Один ввод данных запускает натальную карту, prompt-сценарии нумерологии и Human Design, затем общий синтез. Точные функции выбирает команда. Матрица судьбы остаётся pending. Админ-панель ожидает уточнения договорного объёма. Сопоставление с исходными milestone находится в списке модулей.
Акторы¶
- Гость вводит данные, видит прогресс расчёта, затем обязан зарегистрироваться для просмотра результата.
- Клиент управляет профилем, получает бесплатные факты, покупает подписку, читает разборы/прогнозы, ведёт цели и заказывает консультацию.
- Практик самостоятельно регистрируется после обычного OTP-входа, создаёт публичный профиль и управляет заявками. Ручная или автоматическая верификация практика в текущий scope не входит.
- Системные worker-процессы считают карты, вызывают AI, продлевают подписки, отправляют уведомления и сверяют платежи.
In scope¶
Идентификация и профиль¶
- passwordless OTP по e-mail через Resend до paywall; один flow создаёт нового пользователя либо открывает сессию;
- шестизначный код, TTL 10 минут, resend interval 60 секунд, максимум 5 попыток и rate limit по e-mail/IP;
- короткий access token и rotating HttpOnly refresh session; роли
clientиpractitioner; - имя, дата/время/место рождения, точность времени, координаты, IANA-таймзона;
- версии юридических документов; сейчас заглушки оферты/privacy, позднее финальные тексты и фиксация согласий;
- изменение исходных данных создаёт новую версию расчёта, а не переписывает историю.
Расчёты и бесплатный результат¶
- одно окно собирает общий набор исходных данных и запускает только доступные пользователю и включённые для релиза расчётные модули;
- натальная карта —
natal-v1; нумерология и HD — LLM-сценарии с точными функциями через OpenRouter; Матрица судьбы пока не включена в подтверждённый состав; - единый lifecycle
queued → running → succeeded|failed, повторные попытки и кэш по входному хэшу; - бесплатные факты активных систем: планеты/дома/аспекты, а при включённых модулях — числа, тип/центры и арканы; пользователю показывается короткая утверждённая выжимка, а не обязательные отдельные отчёты по каждой системе;
- базовые данные для визуализации; растровую/интерактивную карту рисует frontend;
- если точного времени нет, по принятому default считаются только нумерология и Матрица.
Подписка, единый разбор и прогнозы¶
- бесплатный лид-магнит и paywall после регистрации; модель поддерживает несколько тарифов/цен, но коммерческий baseline MVP — один основной месячный RUB-тариф;
- сохранение способа оплаты с явным согласием и повторные списания;
- entitlement на расширенный разбор, единый маршрут, прогнозы и персональный трекер/советник;
- AI-генерация по сохранённым фактам активных систем через provider-agnostic port, стабильные оси, кэш и версионирование; итог синтезирует общую картину и не обязан делиться на системные главы;
- прогноз день/неделя/месяц по отношениям, карьере, финансам и безопасной оси «самочувствие/забота о себе»;
- отмена автопродления, статусы past-due/expired и read-only история.
Цели и консультации¶
- цель или запрос, сфера, текст, срок, статус, check-in и результат;
- агрегированная статистика без утверждения причинно-следственной связи с прогнозами;
- публичный каталог одобренных практиков, карточка, фильтры, заявка и статусы;
- разовая оплата консультации; комиссия и расчёты с практиком после утверждения юридической схемы;
- история консультаций и ручное согласование времени через поля заявки/переходы статуса, без calendar integration, встроенного чата или раскрытия контактов в публичной карточке.
Операции¶
- транзакционные e-mail через Resend, пользовательские preferences и журнал доставки;
- server-side события воронки и UTM first/last touch;
- технические логи, метрики, outbox/retry и финансовая сверка без административного API;
- удаление/анонимизация по запросу с сохранением данных, которые законно нужны для финансового учёта.
Pending scope¶
- входит ли Матрица судьбы в первый MVP;
- точная длина, канал показа и квота бесплатной выжимки;
- состав paid entitlement, базовая цена, квоты и нужен ли годовой тариф; скидка 40% на первый месяц принята;
- какие функции трекера/календарного советника входят в MVP;
- входит ли админ-панель в текущий договор/MVP и, если да, её роли, операции и критерии приёмки.
Около 800 ₽ в месяц и одна–три бесплатные попытки — только ориентиры со звонка; скидка 40% уже утверждена. Их нельзя hardcode-ить до письменного catalog/entitlement decision.
Out of scope¶
- мобильное приложение, PWA и любой пользовательский frontend;
- административная панель в текущем engineering baseline: UI, admin role,
/adminAPI и административный CRUD. Пункт будет пересмотрен только после письменного ответа заказчика по договорному scope; - Telegram bot/linking/notifications, push, встроенный календарь, чат и видеосвязь;
- сегменты аудитории 1 и 3 из PRD, международный/мультиязычный запуск;
- товары, камни, талисманы, курсы, вебинары, реклама и B2B;
- синастрия, групповые консультации, геймификация, рефералы, loyalty, promo, чаевые и донаты;
- ручная и автоматическая верификация практиков, проверка документов и verification workflow;
- собственное обучение ML-модели;
- медицинская, психологическая, юридическая или инвестиционная диагностика/рекомендация.
Нефункциональные требования¶
- одинаковый нормализованный ввод и версия алгоритма дают byte-stable JSON после канонической сериализации;
- натальные долготы сверяются минимум на трёх эталонах с расхождением менее 0,5°;
- денежные суммы хранятся в minor units либо
Decimal, но никогда неfloat; - webhooks, платежи, расчёты и генерации идемпотентны;
- секреты не попадают в БД, ответы API и логи; тело запросов с ПДн не логируется;
- все даты событий — UTC, пользовательские таймзоны — IANA ID, финансовые отчёты учитывают зону провайдера;
- доступ к данным клиента проверяется на уровне каждого service use case;
- AI-ответ всегда связан с версиями входа, промпта, provider/model snapshot и политики безопасности;
- финансовые переходы, provider events и автоматические повторные операции имеют audit trail.
Метрики пилота¶
Backend должен позволять считать: шаги воронки по UTM, conversion paywall→payment, M2/M3 renewal, CAC по каналу, выручку и LTV по когорте, долю пользователей с целями, заявки/оплаты/повторы консультаций и bypass-инциденты. Цели старого PRD (30–50 платящих, ≥40% повторов за 60 дней, ≥25% прогноз/дневник, bypass <40%, CAC ≤5 000 ₽ в одном канале) храним как пилотные ориентиры, а не технические SLA.