- Проведён аудит frontend hooks перед изменениями
- Сохранён текущий hero с девушкой и верхнее меню
- Landing перестроен в сценарий Пульс дня → Natus → глубокие разборы
- Статусы вынесены ниже ценностных блоков
- Публично показаны только «Рождение» и «Увлечение»
Product roadmap
Дорожная карта PrismaASTRO
Актуальный план развития продукта после внедрения полного UX-сценария: новый посетитель получает Пульс дня, создаёт Natus, попадает в личное пространство и мягко переходит к статусу «Увлечение».
Уже сделано
Что уже выведено в рабочий beta-фронтенд
- Dashboard превращён в первое лобби пользователя
- Добавлен блок Пульса дня и стартовых разборов
- Добавлен блок следующего лучшего действия
- «Глубина» оставлена только как in-app teaser
- Сохранены живые auth/profile hooks
- Натальная карта получила cost/state intro
- Прогнозы получили сценарий Пульс дня / глубокий период
- Совместимость получила понятный вход через Natus ID или данные
- Добавлены общие состояния результата generating/saved/error
- Технические слова убраны из публичного UI
- Добавлены иконки PrismaASTRO product package
- Проверены mandatory viewport 390, 720, 1080, 1366, 1920, 2560
- Проверено отсутствие horizontal overflow на 6 страницах
- Проверено отсутствие console errors в MCP
- Создана Gitea branch prismaastro-product-ux-flow
- Frontend auth/state больше не хранится в JSON
- Web state вынесен в PostgreSQL
- Access/refresh flow проверен на beta
- Добавлена таблица oauth_identities
- Telegram/MAX foundation добавлен, Яндекс/VK сохранены в OAuth-плане
- Добавлены `/live`, `/ready` и `/metrics`
- Убран hardcoded Redis secret fallback
- Публичные ежедневные гороскопы по 12 знакам
- Отдельная маленькая быстрая LLM для бесплатного контента
- План публикации в Telegram-канал и бота
- План публикации в VK/community
- Мягкая конверсия из общего гороскопа в Natus
Последовательность
Следующие этапы после product UX rollout
Product UX baseline
Закрепили текущий beta-фронтенд как основу продукта: сохранили визуальную эстетику, живые API hooks и собрали понятный путь пользователя.
- Прочитан PrismaASTRO Codex package
- Проведён Phase 0 audit до правок
- Составлен список безопасных frontend-файлов
- Зафиксированы hooks, которые нельзя переименовывать
- Добавлены design tokens и shell-компоненты
- Подключён набор product icons
- Landing перестроен в полный продуктовый сценарий
- Формы регистрации и входа сохранены живыми
- Dashboard оформлен как первое личное лобби
- Tool pages получили intro, cost preview, states и soft paywall
- Глубина скрыта с публичной главной
- Проведён local visual QA через MCP на 6 разрешениях
Сохранённая карта и core loop
Главный продуктовый цикл: вошёл, построил натальную карту один раз, дальше работаешь с сохранённым результатом.
- Спроектировать хранилище созданных материалов
- Сохранить natal calculation JSON
- Сохранить SVG натальной карты
- Сохранить текст интерпретации
- Добавить API получения сохранённой натальной карты
- Сделать генерацию idempotent по birth data hash
- Защититься от двойного клика и параллельной генерации
- Помечать карту устаревшей при изменении birth data
- Добавить первый экран личного кабинета
- Добавить редактирование профиля с предупреждением
- Добавить базовый архив генераций
- Покрыть repeat visit / saved result тестами
Production-ready backend
Доводим backend до состояния, где рост нагрузки решается добавлением ресурсов и экземпляров, а не переписыванием ядра.
- Проверить live backend, PostgreSQL, Redis и frontend health
- Вынести web user state в PostgreSQL
- Добавить Telegram/MAX foundation и сохранить Яндекс/VK OAuth в плане входа
- Добавить отдельные `/live` и `/ready` endpoints
- Довести `/metrics` до стабильного ответа
- Убрать hardcoded Redis secret fallback из backend-кода
- Добавить production smoke script
- Описать high-load env profile и PgBouncer strategy
- Спроектировать очередь тяжёлых генераций
- Добавить generation_jobs и worker service
- Перевести длинные генерации на job/archive model
- Добавить per-user usage ledger и quotas
- Провести baseline load test и зафиксировать capacity
Лимиты, статус Увлечение и партнёр
Вводим реальную доступность инструментов, лимиты и первый платный сценарий внутри статуса Увлечение.
- Утвердить числовые лимиты статуса Рождение
- Утвердить числовые лимиты статуса Увлечение
- Создать entitlement service
- Добавить usage counters
- Добавить API capability state
- Показывать remaining limits в кабинете
- Добавить состояния available / locked / used-up
- Добавить one-off service placeholders
- Создать сохранённого партнёра
- Добавить партнёра по Natus ID
- Добавить партнёра вручную по birth data
- Сделать совместимость с сохранённым партнёром
- Подготовить pair forecast endpoint/UI placeholder
Ежедневные гороскопы и медиа-воронка
Бесплатный вход для новой аудитории: короткие ежедневные тексты по знакам зодиака на маленькой быстрой модели, публикации в мессенджерах и плавный переход к персональному Natus.
- Спроектировать public SEO-раздел ежедневных гороскопов
- Добавить индексную страницу с 12 знаками зодиака
- Подготовить SEO metadata, OpenGraph и JSON-LD
- Описать `SMALL_LLM_BASE_URL` и `SMALL_LLM_MODEL` profile
- Создать prompt templates для коротких ежедневных гороскопов
- Добавить кеш `date + sign + locale + prompt_version`
- Добавить scheduler генерации на 12 знаков
- Сохранять ежедневные тексты в PostgreSQL
- Добавить fallback при недоступности small LLM
- Добавить Telegram bot entry для гороскопа дня
- Подготовить Telegram channel post format
- Подготовить VK community/channel publishing adapter
- Добавить аналитику sign/date/source и перехода в Natus
Счёт, финансы и админка
Финансовый и операционный каркас: без него продукт нельзя нормально обслуживать и монетизировать.
- Создать структуру лицевого счёта пользователя
- Создать append-only balance ledger
- Создать service catalog
- Создать status prices и service prices
- Создать purchase intents
- Реализовать pay-from-balance
- Автоактивировать статус/услугу после оплаты
- Выбрать первый российский платёжный провайдер
- Подготовить payment provider abstraction
- Добавить test-mode top-up при готовности провайдера
- Реализовать webhook idempotency
- Собрать admin MVP dashboard
- Добавить user search/detail для support
- Добавить status/limit admin view
- Добавить payment/balance admin view
- Добавить audit log foundation
- Провести full beta QA и smoke deploy
Визуальные темы
Темы не блокируют MVP, но архитектура должна не мешать их быстрому подключению.
- Зарезервировать theme tokens в CSS/config
- Оставить текущий визуальный shell как default
- Подготовить asset naming для hero/background
- Сгенерировать белоснежную luxury тему при свободной ёмкости
- Сгенерировать чёрно-огненную мужскую тему при свободной ёмкости
- Проверить LCP после новых ассетов
Группы и социальный слой
Расширение после MVP: статус Увлечение, семьи, коллективы, компании и социальные механики.
- Создать структуру групп
- Добавить family/team/company dashboard
- Добавить участников по Natus ID и birth data
- Сделать compatibility matrix
- Сделать group forecast
- Проработать social permissions и consent
Открытые решения
Что нужно утвердить быстро
Финально утвердить, что считать изменением Natus и когда пересчитывать карту.
Точные числа для статусов «Рождение» и «Увлечение».
Первый российский платёжный провайдер и test-mode доступ.
Покупаем кредиты или сразу конкретную услугу/генерацию.
Правила работы с партнёрами, группами, Natus ID и consent.
Основной быстрый вход: Яндекс и ВКонтакте. Telegram и MAX остаются дополнительными мессенджер-каналами.
Быстрый профиль выделен под короткие бесплатные прогнозы, микроответы и ежедневные гороскопы; глубокая персональная генерация остаётся на основной модели.
Telegram запускаем первым: бот и канал. VK готовим как следующий публичный канал с тем же контентным пайплайном.