Files
voidea/template/docs/migration-path.md

142 lines
5.2 KiB
Markdown

# Поэтапный план взросления проекта
Проект не строится сразу целиком. Он проходит этапы — от прототипа до саморазвивающейся системы.
Агенты живут с первого коммита. Новые агенты добавляются когда возникает потребность.
---
## Stage 0: Foundation — Ядро
**Начинаем здесь.** Проект только родился.
### Код
- FastAPI + SQLite + базовая auth
- Минимальный набор правил (00-rules.md)
- Базовые CRUD endpoints
- Pydantic схемы на все входы
### Агенты (создаются в первую очередь)
- **DocAgent** — пишет документацию параллельно с кодом
- **AuditAgent** — проверяет каждый коммит на правила
- **EvolutionAgent** — версионирует агентов
- **SupervisorAgent** — следит за всеми агентами
### Инфраструктура
- SQLite (aiosqlite)
- Прямой вызов фоновых задач (без Celery)
### До Stage 1
Сразу после того, как есть первый endpoint и auth.
---
## Stage 1: Growth — Рост
Проект обрастает функциональностью.
### Добавляемый код
- Полноценные сервисы
- Интеграции (AI провайдеры)
- Фронтенд (если нужен)
- Тесты
### Добавляемые агенты
- **QATesterAgent** — когда появились тесты (авто-проверка покрытия)
- **FixAgent** — когда пойман первый баг (анализ ошибок)
- **BacklogAgent** — когда появился техдолг (управление TODO/FIXME)
### Инфраструктура
- Те же SQLite + прямой вызов
- Тестовое покрытие > 50%
### До Stage 2
Перед первым production-релизом.
---
## Stage 2: Production-ready
Проект готов к реальным пользователям.
### Добавляемый код
- PostgreSQL + asyncpg
- Redis + Celery для фоновых задач
- Мониторинг (health + метрики)
- Полная документация
### Добавляемые агенты
- **SecurityAgent** — проверка конфигов, зависимостей
- **SpecAgent** — управление версией проекта, CHANGELOG
- **RolloutAgent** — постепенное развёртывание
### Инфраструктура
- PostgreSQL
- Redis + Celery worker
- CI/CD (lint → test → build → deploy)
- SSL (Let's Encrypt)
- .env для production + staging
### До Stage 3
После запуска, когда появились первые пользователи и метрики.
---
## Stage 3: Autonomous — Саморазвитие
Проект начинает развиваться самостоятельно.
### Добавляемый код
- Metrics middleware
- Prometheus/Grafana (или встроенные метрики)
- Agent report dashboard
- Self-healing механизмы
### Добавляемые агенты
- **ObserverAgent** — сбор метрик использования
- **UITestAgent** — визуальное тестирование (если есть UI)
### Инфраструктура
- A/B тестирование
- Auto-scaling (при необходимости)
- Автоматический откат при росте ошибок
### До Stage 4
Когда > 1000 пользователей или > 3 разработчиков.
---
## Stage 4: Evolution — Эволюция
Проект развивается автономно.
### Уровень саморазвития
- Агенты не только предлагают, но и применяют изменения
- EvolutionAgent принимает решения о рефакторинге
- FixAgent применяет исправления (с PR на ревью)
- ObserverAgent на основе метрик предлагает roadmap
### Инфраструктура
- Полный мониторинг с алертами
- Автоматическое масштабирование
- Disaster recovery plan
- Postmortem культура
---
## Сводная таблица
| Stage | БД | Задачи | Агентов | Тесты | Мониторинг | Саморазвитие |
|-------|----|--------|---------|-------|-----------|-------------|
| 0 | SQLite | Прямой | 4 | > 20% | Нет | Reactive |
| 1 | SQLite | Прямой | 7 | > 50% | Нет | Reactive |
| 2 | PostgreSQL | Celery | 9 | > 80% | Базовый | Reactive |
| 3 | PostgreSQL | Celery | 11 | > 80% | Prometheus | Proactive |
| 4 | PostgreSQL | Celery | 11+ | > 90% | Full | Autonomous |
---
## [ASK] На каком вы этапе?
Оцените текущее состояние проекта и выберите целевой этап.
Рекомендация: начинайте со Stage 0, не прыгайте через этапы.