Scope MVP v0.1
Границы MVP — что входит и что исключено.
📐 Scope MVP v0.1 — Foundation
Версия: v0.1.0
Дата: 2026-06-11
Статус: Утверждён
Обзор
MVP v0.1 — фундамент платформы SprosOS Seed. На этом этапе мы закладываем архитектурную основу, реализуем 9 bounded contexts в минимально работоспособном виде и подключаем первого клиента EcoYar.
Цель v0.1 — proof of capability: показать, что цикл Signal → Evidence → JTBD → Offer → Experiment → Measurement → Opportunity работает хотя бы для одного клиента.
9 Bounded Contexts MVP
Identity (IAM)
- Регистрация и аутентификация пользователей
- Управление организациями и рабочими пространствами
- Роли: admin, analyst, operator, viewer
Research Inbox
- Приём сигналов из внешних источников (парсер Метрики вручную)
- Классификация и тегирование сырых сигналов
- Очередь на обработку
Evidence Graph
- Хранение структурированных свидетельств
- Связи между свидетельствами (подтверждает, опровергает, уточняет)
- Поиск и фильтрация свидетельств
JTBD (Job To Be Done)
- Реестр JTBD-гипотез
- Версионирование концепций (JTBDConcept)
- Привязка evidence к JTBD
Product / Offer
- Реестр продуктов
- Реестр офферов с версионированием
- Привязка офферов к JTBD
Experiment
- Реестр экспериментов
- Варианты эксперимента (ExperimentVariant)
- Статусная модель: draft → active → completed → cancelled
Activation Lite
- Базовое отслеживание воронки: Visit → Lead
- Источники трафика (TrafficSource)
- Кампании (Campaign)
Measurement Lite
- Базовые метрики: конверсия, стоимость лида, количество визитов
- MetricAggregate по периодам
- Привязка к экспериментам
Opportunity Backlog
- Карточки возможностей (OpportunityCard)
- Оценка impact и effort
- Приоритизация на основе evidence
Что входит
- ✅ Tenancy foundation (Organization → Workspace → Project)
- ✅ Research inbox с ручным вводом сигналов
- ✅ Evidence graph с базовыми связями
- ✅ JTBD registry с версионированием
- ✅ Product/Offer registry
- ✅ Experiment registry
- ✅ Activation lite (manual lead import)
- ✅ Measurement lite (ключевые метрики)
- ✅ Opportunity backlog
- ✅ Constitution-driven development (весь这套 документов)
- ✅ ADR-логирование первых решений
- ✅ Архитектурная документация
Что НЕ входит
Подробный список — в NON_GOALS.md. Ключевые исключения:
- ❌ Автоматические коннекторы (кроме ручного импорта)
- ❌ Полноценный Experiment Engine (статистика)
- ❌ Интеграция с 1С и PHPShop (manual import)
- ❌ SaaS self-service
- ❌ ML/AI классификация
Критерии готовности MVP
- Рабочий цикл: Signal → Evidence → JTBD → Offer → Experiment → Measurement → Opportunity — все шаги проходимы для EcoYar
- Tenancy: Минимум одна организация с одним workspace и одним проектом
- Данные EcoYar: Загружены первые сигналы из Метрики, построены первые 5 JTBD-гипотез, созданы 3+ оффера, запущен 1 эксперимент
- Измерения: Конверсия по эксперименту считается
- Документация: Вся конституция заполнена, ADR зафиксированы
- Tests: Unit tests для core domain logic
- Review: Архитектурное ревью пройдено
Техстек
| Компонент | Технология |
|---|---|
| Backend runtime | Python 3.11+ |
| Web framework | FastAPI |
| Database | PostgreSQL 16 (с pgvector) |
| ORM | SQLAlchemy 2.0 + async |
| Migrations | Alembic |
| Validation | Pydantic v2 |
| API | REST + OpenAPI (авто FastAPI) |
| Auth | JWT + python-jose + bcrypt (passlib) |
| Background jobs | Redis + ARQ / Dramatiq |
| Frontend | Next.js + TypeScript (apps/web) |
| Testing | pytest |
| Container | Docker + Docker Compose |
| Secrets | Pydantic Settings + .env |
| Package manager | pip / poetry (Python), npm (Next.js) |
Сборка проекта
sprosos-seed/
├── apps/
│ ├── api/ # Backend API (modular monolith, FastAPI + Python)
│ │ ├── app/
│ │ │ ├── domain/ # Доменная логика (9 bounded contexts)
│ │ │ ├── infrastructure/ # DB, connectors, config
│ │ │ └── api/ # REST endpoints (v1)
│ │ └── requirements.txt
│ └── web/ # Frontend (Next.js + TypeScript)
├── docs/ # Документация
├── infra/ # Docker, скрипты
│ ├── docker/
│ └── scripts/
├── .cursor/ # Cursor AI rules
└── .openclaw/ # OpenClaw skills
Примечание о расхождении: Изначально tech stack был описан как TypeScript (Hono, Drizzle, pnpm). В процессе bootstrap был выбран Python (FastAPI, SQLAlchemy, PostgreSQL) для backend. Документация приведена в соответствие с фактическим стеком. При изменении стека — обновить ADR.