Initial commit: VoIdeaAI - voice-first AI idea assistant
This commit is contained in:
+467
@@ -0,0 +1,467 @@
|
||||
# Block 0: Rules & Conventions — VoIdea
|
||||
|
||||
Конституция проекта VoIdea. Применяется ко всем блокам.
|
||||
Если в специфичном блоке нет явного описания ситуации — решение принимается по правилам Block 0.
|
||||
|
||||
---
|
||||
|
||||
## 1. Code Style Standards
|
||||
|
||||
**Python (PEP8 + автоматизация):**
|
||||
- Кодировка UTF-8, отступы 4 пробела
|
||||
- Максимальная длина строки: 88 символов (
|
||||
uff format / lack)
|
||||
- Именование: переменные/функции — snake_case, классы — PascalCase, константы — UPPER_SNAKE_CASE
|
||||
- Аннотации типов — обязательны для аргументов и возвращаемых значений всех функций
|
||||
- Строки: двойные кавычки " для данных, одинарные ' для docstrings
|
||||
- Импорты: stdlib → third-party → local (алфавитный порядок внутри групп). Абсолютные импорты, относительные запрещены
|
||||
- Пробелы: вокруг операторов, не внутри скобок
|
||||
|
||||
**SQL:**
|
||||
- Ключевые слова — UPPERCASE (SELECT, FROM, WHERE)
|
||||
- Имена таблиц и полей — snake_case
|
||||
- Сложные запросы разбивать на строки, выравнивать JOIN и WHERE
|
||||
|
||||
**Оптимальный размер файла:**
|
||||
- Если файл маршрутов/контроллеров превышает 500 строк — разбить на модули
|
||||
|
||||
**JavaScript/TypeScript (Web/PWA):**
|
||||
- Formatter: Prettier (100 символов)
|
||||
- Linter: ESLint с правилами irbnb +
|
||||
eact
|
||||
- Типы: strict TypeScript, any запрещён
|
||||
- Импорты: абсолютные через @/ alias
|
||||
- Стили: Tailwind CSS
|
||||
- Состояние: zustand или RTK
|
||||
- Асинхронность: sync/await вместо .then()
|
||||
|
||||
---
|
||||
|
||||
## 2. Documentation
|
||||
|
||||
- Docstrings: Google-формат для всех публичных классов, функций, методов
|
||||
- TODO/FIXME: с указанием причины и планируемого срока. # TODO(#TASK-N): причина
|
||||
- Предупреждения о рисках: если код затрагивает безопасность, производительность или совместимость
|
||||
- README.md: в каждой папке pp/* — краткое описание файлов внутри
|
||||
|
||||
---
|
||||
|
||||
## 3. Naming Conventions
|
||||
|
||||
**Переменные окружения:**
|
||||
`
|
||||
PROJECT_NAME=VoIdea
|
||||
PROJECT_VERSION=X.Y.Z
|
||||
PROJECT_ENV=local|development|staging|production
|
||||
SERVER_HOST=X.X.X.X
|
||||
SERVER_PORT=8020
|
||||
SERVER_EXTERNAL_URL=http://X.X.X.X:8020
|
||||
DB_HOST=localhost
|
||||
DB_PORT=5432
|
||||
DB_NAME=voidea
|
||||
DB_USER=voidea
|
||||
DB_PASS=
|
||||
REDIS_HOST=localhost
|
||||
REDIS_PORT=6379
|
||||
AI_YANDEX_KEY=
|
||||
AI_GIGACHAT_KEY=
|
||||
AI_FALLBACK_MODEL=yandex_gpt
|
||||
AI_TIMEOUT=10
|
||||
OAUTH_YANDEX_ID=
|
||||
OAUTH_YANDEX_SECRET=
|
||||
OAUTH_GOOGLE_ID=
|
||||
OAUTH_GOOGLE_SECRET=
|
||||
SMTP_HOST=
|
||||
SMTP_PORT=
|
||||
SMTP_USER=
|
||||
SMTP_PASS=
|
||||
`
|
||||
|
||||
**Индексы БД:**
|
||||
`
|
||||
ix_tablename_column
|
||||
uq_tablename_column
|
||||
fk_tablename_column
|
||||
`
|
||||
|
||||
**Ветки Git:**
|
||||
`
|
||||
main → стабильная, продакшен
|
||||
develop → интеграция фич
|
||||
feature/* → новая функция
|
||||
hotfix/* → срочное исправление
|
||||
release/* → подготовка релиза
|
||||
`
|
||||
|
||||
**Миграции Alembic:**
|
||||
`
|
||||
{действие}_{таблица}
|
||||
`
|
||||
|
||||
---
|
||||
|
||||
## 4. Git & Versioning
|
||||
|
||||
### 4.1 Формат
|
||||
SemVer: MAJOR.MINOR.PATCH
|
||||
|
||||
### 4.2 CHANGELOG
|
||||
Формат: единый файл CHANGELOG.md с разделами по MINOR-версисиям
|
||||
Новый файл создаётся при смене X (major) или Y (minor):
|
||||
`
|
||||
CHANGELOG/
|
||||
├── v1.0.md # 1.0.0 → 1.0.n (патчи добавляются в этот файл)
|
||||
├── v1.1.md # 1.1.0 → 1.1.n (новый файл)
|
||||
└── v2.0.md # 2.0.0 → ...
|
||||
`
|
||||
|
||||
### 4.3 Conventional Commits
|
||||
`
|
||||
<тип>[optional scope]: <описание>
|
||||
`
|
||||
- eat: новая функция → MINOR
|
||||
- ix: исправление → PATCH
|
||||
- BREAKING: в теле коммита → MAJOR
|
||||
- docs,
|
||||
efactor, est, chore: не влияют на версию
|
||||
|
||||
### 4.4 Agent Versioning
|
||||
|
||||
Агенты версионируются независимо от проекта по SemVer (A.B.C).
|
||||
|
||||
**Правила бампа:**
|
||||
- **A (major)**: breaking change в публичном интерфейсе агента
|
||||
- **B (minor)**: новая capability (метод, роль, prompt)
|
||||
- **C (patch)**: внутренние правки без изменения поведения
|
||||
|
||||
**Механика:**
|
||||
- Каждый агент после `run()` вычисляет SHA256 checksum своего файла
|
||||
- Сравнивает с `AgentConfig.checksum` в БД
|
||||
- Не совпал → авто-бамп patch, запись в `CHANGELOG/agents/<name>.md`
|
||||
- EvolutionAgent управляет minor/major бампами
|
||||
|
||||
**Формат changelog:**
|
||||
```markdown
|
||||
CHANGELOG/agents/
|
||||
├── doc_agent.md
|
||||
├── audit_agent.md
|
||||
└── ...
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5. Code Review
|
||||
|
||||
- Обязателен для всех PR в main и develop
|
||||
- Минимум 1 апрув от admin/owner
|
||||
- Чеклист ревью:
|
||||
- [ ] Нет секретов в коде
|
||||
- [ ] Нет сырых Exception в API ответах
|
||||
- [ ] Есть тесты (или TODO с причиной)
|
||||
- [ ] docs/blocks/*.md обновлён
|
||||
- [ ] ADR создан при архитектурных изменениях
|
||||
|
||||
---
|
||||
|
||||
## 6. Definition of Done (DoD)
|
||||
|
||||
- [ ] Код написан (соответствует стилю §1)
|
||||
- [ ] Линт проходит (
|
||||
uff check — 0 errors)
|
||||
- [ ] Тесты написаны (минимум 1 smoke)
|
||||
- [ ] Тесты проходят (pytest — green)
|
||||
- [ ] Документация блока обновлена
|
||||
- [ ] .env.example обновлён (если новая переменная)
|
||||
- [ ] Миграция написана (если менялась БД)
|
||||
|
||||
---
|
||||
|
||||
## 7. Architecture (SOLID + слоистая)
|
||||
|
||||
**Слои (зависимости только внутрь):**
|
||||
`
|
||||
API → Services → Integrations → Data Layer → Core
|
||||
`
|
||||
|
||||
**SOLID:**
|
||||
- S: каждый блок — одна доменная область
|
||||
- O: новые интеграции — новые классы
|
||||
- L: сервисы подчиняются общему интерфейсу
|
||||
- I: сервис принимает только нужные зависимости
|
||||
- D: API зависит от абстракции Service
|
||||
|
||||
---
|
||||
|
||||
## 8. Error Handling
|
||||
|
||||
| Слой | Действие |
|
||||
|------|---------|
|
||||
| API | HTTPException с detail и status_code |
|
||||
| Services | Бизнес-исключения без HTTP-статусов |
|
||||
| Integrations | ry/except с fallback |
|
||||
| DB | Ошибки БД не всплывают выше |
|
||||
| WebUI | Flash-сообщение пользователю |
|
||||
|
||||
---
|
||||
|
||||
## 9. Security Base
|
||||
|
||||
- .env — всегда в .gitignore
|
||||
- JWT: алгоритм HS256, expire = 60 минут, refresh = 30 дней
|
||||
- Пароли: bcrypt через passlib
|
||||
- Pydantic валидация на всех входах
|
||||
- RBAC: роли user, dmin, owner
|
||||
|
||||
---
|
||||
|
||||
## 10. Logging Standards
|
||||
|
||||
**Формат строки лога:**
|
||||
`
|
||||
[ISO8601] [LEVEL] [component] message key=val
|
||||
2026-05-10T14:30:00.000Z INFO [auth] User logged in user_id=abc
|
||||
`
|
||||
|
||||
**Уровни по слоям:**
|
||||
|
||||
| Слой | DEBUG | INFO | WARNING | ERROR |
|
||||
|------|-------|------|---------|-------|
|
||||
| API | Параметры | Request | — | 5xx |
|
||||
| Service | Входные | Операция | Превышен лимит | Ошибка БД |
|
||||
| Integration | Raw ответ | Успех | Timeout | Внешний API |
|
||||
|
||||
**Запрещено:** f-строки в logger. Только %s (lazy evaluation).
|
||||
**Разрешено:** f-строки в logging_service.log().
|
||||
|
||||
---
|
||||
|
||||
## 11. Sensitive Data Policy
|
||||
|
||||
**Никогда не логировать:**
|
||||
- Пароли (даже хэш)
|
||||
- JWT токены
|
||||
- API keys и секреты
|
||||
- Email в открытом виде (логировать user_id)
|
||||
|
||||
**Маскировать в логах:**
|
||||
- Email: u***@mail.ru
|
||||
- IP: 195.208.*.*
|
||||
|
||||
---
|
||||
|
||||
## 12. Third-party Call Fallback Pattern
|
||||
|
||||
`
|
||||
1. Попытка (timeout: 10s)
|
||||
2. Успех → return data
|
||||
3. Таймаут → retry 1 (через 2s)
|
||||
4. Таймаут → retry 2 (через 5s)
|
||||
5. 4xx → WARNING, return None/fallback
|
||||
6. 5xx → ERROR, retry → если снова 5xx → return None/fallback
|
||||
7. Все retry исчерпаны → CRITICAL в SystemLog, возврат fallback
|
||||
`
|
||||
|
||||
---
|
||||
|
||||
## 13. Performance Budgets
|
||||
|
||||
| Метрика | Лимит (p95) |
|
||||
|---------|-------------|
|
||||
| API response (без GPT) | < 500ms |
|
||||
| DB query (одиночный) | < 100ms |
|
||||
| DB query (агрегатный) | < 300ms |
|
||||
| GPT call | < 5s (иначе fallback) |
|
||||
| WebUI page load | < 2s |
|
||||
|
||||
---
|
||||
|
||||
## 14. Data Retention Policy
|
||||
|
||||
| Данные | Срок хранения |
|
||||
|--------|---------------|
|
||||
| SystemLog | 90 дней |
|
||||
| SecurityEvent | 1 год |
|
||||
| Notification | 30 дней |
|
||||
| PaymentTransaction | 5 лет |
|
||||
| User data | До удаления + 30 дней |
|
||||
| Session (JWT) | 24 часа |
|
||||
|
||||
---
|
||||
|
||||
## 15. Dependency Management
|
||||
|
||||
- **patch**: в любой момент (bugfix, security)
|
||||
- **minor**: не чаще 1 раза в спринт
|
||||
- **major**: только с полным регрессом
|
||||
|
||||
---
|
||||
|
||||
## 16. Async/Sync Decision Matrix
|
||||
|
||||
| Сценарий | Механизм |
|
||||
|----------|----------|
|
||||
| GET-запросы, CRUD | sync (await) |
|
||||
| Отправка email | Celery async |
|
||||
| GPT вызовы | Celery async |
|
||||
| Бэкапы | Celery async |
|
||||
| WebSocket / SSE | Не используется |
|
||||
|
||||
---
|
||||
|
||||
## 17. Architecture Decision Records (ADR)
|
||||
|
||||
Любое значимое архитектурное решение фиксируется в docs/adr/NNN-title.md.
|
||||
|
||||
Формат:
|
||||
`markdown
|
||||
# ADR-001: Название решения
|
||||
|
||||
Статус: принято
|
||||
Контекст: описание проблемы
|
||||
Решение: что выбрано
|
||||
Последствия: плюсы и минусы
|
||||
`
|
||||
|
||||
---
|
||||
|
||||
## 18. Tooling
|
||||
|
||||
| Инструмент | Назначение |
|
||||
|------------|------------|
|
||||
| ruff | Линтер (E, F, W, I, N, UP) |
|
||||
| ruff format | Форматтер (line-length=88) |
|
||||
| mypy | Type checker |
|
||||
| pytest | Тесты (asyncio_mode=auto) |
|
||||
| pre-commit | Хуки (ruff, ruff-format, trailing-whitespace) |
|
||||
|
||||
---
|
||||
|
||||
## 19. AI Agents (11 ролей)
|
||||
|
||||
| Роль | Провайдер | Описание |
|
||||
|------|-----------|----------|
|
||||
| Координатор | Yandex GPT | Управляет диалогом, обобщает результаты |
|
||||
| Организатор задач | Yandex GPT | Разбивает идею на шаги |
|
||||
| Бизнес-аналитик | Yandex GPT | Оценивает ROI, сроки, аудиторию |
|
||||
| Юрист | GigaChat | Проверяет соответствие законам РФ |
|
||||
| Финансовый консультант | Yandex GPT | Составляет смету, прогноз доходов |
|
||||
| Архитектор решений | Yandex GPT | Проектирует архитектуру |
|
||||
| Тестировщик | Yandex GPT | Составляет тест-кейсы |
|
||||
| UI-дизайнер | Yandex GPT | Прорабатывает интерфейс |
|
||||
| SMM-специалист | Yandex GPT | Планирует продвижение |
|
||||
| Лайф-коуч | Yandex GPT | Помогает ставить цели |
|
||||
| Эксперт по доступности | Yandex GPT | Проверяет инклюзивность |
|
||||
|
||||
**Промпты хранятся в:** docs/agent_prompts.yaml (TDC)
|
||||
|
||||
---
|
||||
|
||||
## 20. System Agents (11 агентов)
|
||||
|
||||
| Агент | Назначение |
|
||||
|-------|-----------|
|
||||
| DocAgent | Документация, комментарии, Runbook |
|
||||
| AuditAgent | Соблюдение правил, прогресс проекта |
|
||||
| SecurityAgent | Безопасность, уязвимости, 152-ФЗ |
|
||||
| SpecAgent | Спецификации, версионирование **проекта**, CHANGELOG |
|
||||
| ObserverAgent | Наблюдение за пользователями, генерация идей |
|
||||
| QATesterAgent | Функциональное тестирование, временные аккаунты |
|
||||
| FixAgent | Исправление багов, анализ логов |
|
||||
| UITestAgent | Визуальное тестирование |
|
||||
| RolloutAgent | Постепенное развёртывание (3→1%→5%→15%→100%) |
|
||||
| EvolutionAgent | Саморазвитие и **версионирование агентов** |
|
||||
| BacklogAgent | Управление отложенными задачами |
|
||||
|
||||
**Триггеры запуска:**
|
||||
- Автоматически: pre-commit, push, daily cron
|
||||
- Вручную: кнопка в админ-панели
|
||||
|
||||
---
|
||||
|
||||
## 21. Design System
|
||||
|
||||
Единый источник истины: docs/design-system/tokens.json
|
||||
|
||||
| Файл | Назначение |
|
||||
|------|------------|
|
||||
| tokens.json | Единый источник (JSON) |
|
||||
| tokens.yaml | YAML версия для документации |
|
||||
| generators/*.py | Генераторы для платформ (CSS, Swift, Kotlin) |
|
||||
|
||||
**Темы:** system (auto), dark, light
|
||||
**Форматы:** CSS Variables, Swift, Kotlin XML
|
||||
|
||||
---
|
||||
|
||||
## 22. Testing Standards
|
||||
|
||||
- Модульные тесты — в ests/unit/
|
||||
- Интеграционные тесты — в ests/integration/
|
||||
- E2E сценарии — в docs/specs/e2e/
|
||||
- Минимум: 1 smoke-тест на endpoint
|
||||
- Фикстуры: conftest.py в корне ests/
|
||||
|
||||
---
|
||||
|
||||
## 23. Migration Policy
|
||||
|
||||
- Alembic, async, одна миграция на одно изменение
|
||||
- Обратно совместимы (без breaking changes)
|
||||
- Название: {revision}_{action}_{table}.py
|
||||
|
||||
---
|
||||
|
||||
## 24. API Version Lifecycle
|
||||
|
||||
`
|
||||
Текущая: /api/v1/* — стабильная
|
||||
Deprecation: 3 месяца после выхода новой версии
|
||||
Отключение: 410 Gone
|
||||
`
|
||||
|
||||
---
|
||||
|
||||
## 25. Module Public API Convention
|
||||
|
||||
__init__.py содержит ТОЛЬКО публичный API модуля:
|
||||
`python
|
||||
from app.models.user import User
|
||||
__all__ = ["User", ...]
|
||||
`
|
||||
|
||||
---
|
||||
|
||||
## 26. Project Glossary
|
||||
|
||||
Глоссарий: docs/blocks/GLOSSARY.md
|
||||
|
||||
| Термин | Значение |
|
||||
|--------|----------|
|
||||
| Idea | Основная сущность проекта (записанная пользователем) |
|
||||
| Agent | ИИ-агент для анализа идей (11 ролей) |
|
||||
| System Agent | Автоматический агент для поддержки проекта (11 штук) |
|
||||
| Backlog | Система отложенных задач/идей |
|
||||
| Rollout | Постепенное развёртывание |
|
||||
| Design Tokens | Единый источник стилей |
|
||||
|
||||
---
|
||||
|
||||
## 27. OAuth & Auth
|
||||
|
||||
**Провайдеры:**
|
||||
- Email + пароль (классика)
|
||||
- Яндекс OAuth
|
||||
- Google OAuth
|
||||
- Apple OAuth (отложено)
|
||||
|
||||
**Схема:** Один пользователь = один провайдер (нельзя привязать Google если уже есть Яндекс)
|
||||
|
||||
---
|
||||
|
||||
## 28. Car Integration (Roadmap)
|
||||
|
||||
ГУ автомобиля — изучить и добавить в будущем:
|
||||
- Android Auto / Apple CarPlay
|
||||
- Bluetooth HID
|
||||
- Подключение кнопок руля
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
FROM node:20-alpine AS frontend-builder
|
||||
WORKDIR /build
|
||||
COPY webui/package*.json ./
|
||||
RUN npm ci
|
||||
COPY webui/ .
|
||||
RUN npm run build
|
||||
|
||||
FROM python:3.12-slim
|
||||
WORKDIR /app
|
||||
COPY requirements.txt .
|
||||
RUN pip install --no-cache-dir -r requirements.txt
|
||||
COPY . .
|
||||
COPY --from=frontend-builder /build/dist /app/webui/dist
|
||||
RUN mkdir -p /app/logs
|
||||
EXPOSE 8020
|
||||
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8020"]
|
||||
+312
@@ -0,0 +1,312 @@
|
||||
# VoIdea — План реализации
|
||||
|
||||
**Версия:** 1.0.0
|
||||
**Дата:** 2026-05-10
|
||||
**Статус:** Черновик
|
||||
|
||||
---
|
||||
|
||||
## Содержание
|
||||
|
||||
1. [Обзор проекта](#1-обзор-проекта)
|
||||
2. [Фазы разработки](#2-фазы-разработки)
|
||||
3. [Детальный план по блокам](#3-детальный-план-по-блокам)
|
||||
4. [Агенты](#4-агенты)
|
||||
5. [Инфраструктура](#5-инфраструктура)
|
||||
6. [Приоритеты](#6-приоритеты)
|
||||
|
||||
---
|
||||
|
||||
## 1. Обзор проекта
|
||||
|
||||
### Описание
|
||||
|
||||
**VoIdea** — гибридное приложение (мобильное + веб) для фиксации и проработки идей с помощью группового ИИ-анализа.
|
||||
|
||||
### Ключевые требования
|
||||
|
||||
- Работа в условиях нестабильного интернета или оффлайн
|
||||
- Максимальная защита данных пользователя
|
||||
- Гибкий выбор ИИ-моделей (локальных и облачных)
|
||||
- Синхронизация данных между устройствами через VPS
|
||||
|
||||
### Технологический стек
|
||||
|
||||
| Компонент | Технология |
|
||||
|-----------|------------|
|
||||
| Backend | Python FastAPI |
|
||||
| Database | PostgreSQL |
|
||||
| Cache/Queue | Redis + Celery |
|
||||
| Frontend | React + TypeScript + Tailwind CSS (PWA) |
|
||||
| Mobile | iOS/Android (параллельно с вебом) |
|
||||
| Server | VPS Ubuntu, Port 8020 |
|
||||
|
||||
---
|
||||
|
||||
## 2. Фазы разработки
|
||||
|
||||
`
|
||||
╔═══════════════════════════════════════════════════════════════════╗
|
||||
║ ФАЗА 1: FOUNDATION ║
|
||||
║ (2-3 недели) ║
|
||||
╠═══════════════════════════════════════════════════════════════════╣
|
||||
║ ✓ 00-rules.md — Адаптация правил VoIdea ║
|
||||
║ ✓ 01-core — Конфиги, модели, base классы ║
|
||||
║ ✓ 02-data — PostgreSQL миграции, модели БД ║
|
||||
║ ✓ 08-devops — CI/CD, контейнеры ║
|
||||
║ ✓ PROJECT_GUIDE.md — Корневой файл ║
|
||||
╚═══════════════════════════════════════════════════════════════════╝
|
||||
↓
|
||||
╔═══════════════════════════════════════════════════════════════════╗
|
||||
║ ФАЗА 2: API & AUTH ║
|
||||
║ (2-3 недели) ║
|
||||
╠═══════════════════════════════════════════════════════════════════╣
|
||||
║ ✓ 03-api — Endpoints (users, ideas, agents) ║
|
||||
║ ✓ OAuth — Яндекс, Google ║
|
||||
║ ✓ JWT — Аутентификация ║
|
||||
║ ✓ 05-services — Бизнес-логика ║
|
||||
╚═══════════════════════════════════════════════════════════════════╝
|
||||
↓
|
||||
╔═══════════════════════════════════════════════════════════════════╗
|
||||
║ ФАЗА 3: AI AGENTS ║
|
||||
║ (3-4 недели) ║
|
||||
╠═══════════════════════════════════════════════════════════════════╣
|
||||
║ ✓ 05-bis-ai-agents — Спецификация агентов ║
|
||||
║ ✓ app/agents/ — Код 11 агентов ║
|
||||
║ ✓ Prompt templates — agent_prompts.yaml ║
|
||||
║ ✓ Fallback chain — Yandex → GigaChat → error ║
|
||||
║ ✓ SpecAgent, EvolutionAgent ║
|
||||
╚═══════════════════════════════════════════════════════════════════╝
|
||||
↓
|
||||
╔═══════════════════════════════════════════════════════════════════╗
|
||||
║ ФАЗА 4: FRONTEND ║
|
||||
║ (3-4 недели) ║
|
||||
╠═══════════════════════════════════════════════════════════════════╣
|
||||
║ ✓ 04-webui — React/Tailwind приложение ║
|
||||
║ ✓ Design system — 3 темы (system/dark/light) ║
|
||||
║ ✓ PWA — Service Worker, оффлайн ║
|
||||
║ ✓ Hotkeys — Настраиваемые горячие клавиши ║
|
||||
║ ✓ Admin panel — Управление, логи, статусы агентов ║
|
||||
╚═══════════════════════════════════════════════════════════════════╝
|
||||
↓
|
||||
╔═══════════════════════════════════════════════════════════════════╗
|
||||
║ ФАЗА 5: INTEGRATION ║
|
||||
║ (2-3 недели) ║
|
||||
╠═══════════════════════════════════════════════════════════════════╣
|
||||
║ ✓ 05-ter-voice — Web Speech API, Whisper ║
|
||||
║ ✓ 05-quater-sync — Синхронизация устройств ║
|
||||
║ ✓ 06-security — Шифрование, SecurityAgent ║
|
||||
║ ✓ Backlog заметки — rate limiting (позже) ║
|
||||
╚═══════════════════════════════════════════════════════════════════╝
|
||||
↓
|
||||
╔═══════════════════════════════════════════════════════════════════╗
|
||||
║ ФАЗА 6: TESTING & AGENTS ║
|
||||
║ (2-3 недели) ║
|
||||
╠═══════════════════════════════════════════════════════════════════╣
|
||||
║ ✓ 07-testing — Методология тестирования ║
|
||||
║ ✓ QATesterAgent — Функциональное тестирование ║
|
||||
║ ✓ FixAgent — Исправление багов ║
|
||||
║ ✓ UITestAgent — Визуальное тестирование ║
|
||||
║ ✓ ObserverAgent — Наблюдение за пользователями ║
|
||||
║ ✓ RolloutAgent — Постепенное развёртывание ║
|
||||
║ ✓ AuditAgent, BacklogAgent, DocAgent, SecurityAgent ║
|
||||
╚═══════════════════════════════════════════════════════════════════╝
|
||||
↓
|
||||
╔═══════════════════════════════════════════════════════════════════╗
|
||||
║ ФАЗА 7: DEPLOYMENT ║
|
||||
║ (1-2 недели) ║
|
||||
╠═══════════════════════════════════════════════════════════════════╣
|
||||
║ ✓ Установка на VPS: Ubuntu + PostgreSQL + Redis + Nginx ║
|
||||
║ ✓ SSL (Let's Encrypt) — после получения домена ║
|
||||
║ ✓ Постепенное развёртывание: 3→1%→5%→15%→100% ║
|
||||
║ ✓ Runbook, мониторинг ║
|
||||
╚═══════════════════════════════════════════════════════════════════╝
|
||||
`
|
||||
|
||||
---
|
||||
|
||||
## 3. Детальный план по блокам
|
||||
|
||||
### Block 0: Rules & Conventions
|
||||
|
||||
- [x] Адаптация под VoIdea
|
||||
- [ ] Интеграция с AI-агентами
|
||||
- [ ] Автоматическое обновление при изменениях
|
||||
|
||||
### Block 1: Core
|
||||
|
||||
- [ ] pp/core/config.py — Конфигурация из переменных окружения
|
||||
- [ ] pp/core/base.py — Базовые классы (BaseModel, BaseService)
|
||||
- [ ] pp/core/exceptions.py — Исключения приложения
|
||||
- [ ] pp/core/dependencies.py — FastAPI dependencies
|
||||
- [ ] pp/core/security.py — JWT, password hashing
|
||||
|
||||
### Block 2: Data
|
||||
|
||||
- [ ] pp/models/user.py — Модель пользователя
|
||||
- [ ] pp/models/idea.py — Модель идеи
|
||||
- [ ] pp/models/agent.py — Настройки агентов
|
||||
- [ ] pp/models/backlog.py — Отложенные задачи
|
||||
- [ ] pp/models/log.py — Логи
|
||||
- [ ] Миграции Alembic
|
||||
|
||||
### Block 3: API
|
||||
|
||||
- [ ] /api/v1/auth/ — Авторизация, OAuth
|
||||
- [ ] /api/v1/users/ — CRUD пользователей
|
||||
- [ ] /api/v1/ideas/ — CRUD идей
|
||||
- [ ] /api/v1/agents/ — Управление агентами
|
||||
- [ ] /api/v1/sync/ — Синхронизация
|
||||
- [ ] /api/v1/admin/ — Админ-панель
|
||||
|
||||
### Block 4: WebUI
|
||||
|
||||
- [ ] React приложение (Vite)
|
||||
- [ ] Tailwind CSS + дизайн-система
|
||||
- [ ] Компоненты: IdeaCard, AgentPanel, SettingsPage, AdminPanel
|
||||
- [ ] PWA: Service Worker, IndexedDB
|
||||
- [ ] Hotkeys система
|
||||
- [ ] Темы: system/dark/light
|
||||
|
||||
### Block 5: Services
|
||||
|
||||
- [ ] pp/services/idea_service.py — Логика идей
|
||||
- [ ] pp/services/agent_service.py — Работа с ИИ-агентами
|
||||
- [ ] pp/services/sync_service.py — Синхронизация
|
||||
- [ ] pp/services/notification_service.py — Email уведомления
|
||||
- [ ] pp/services/logging_service.py — Логирование
|
||||
|
||||
### Block 5-bis: AI Agents
|
||||
|
||||
- [ ] Унифицированный интерфейс pp/integrations/ai/base.py
|
||||
- [ ] Yandex GPT интеграция
|
||||
- [ ] GigaChat интеграция
|
||||
- [ ] Fallback chain
|
||||
- [ ] 11 ролей с промптами
|
||||
|
||||
### Block 5-ter: Voice
|
||||
|
||||
- [ ] Web Speech API integration
|
||||
- [ ] Whisper API (опционально)
|
||||
- [ ] Оффлайн режим (Vosk — roadmap)
|
||||
|
||||
### Block 5-quater: Sync
|
||||
|
||||
- [ ] Кросс-платформенная синхронизация
|
||||
- [ ] Brotli сжатие
|
||||
- [ ] Разрешение конфликтов
|
||||
- [ ] Очередь задач (Celery)
|
||||
|
||||
### Block 6: Security
|
||||
|
||||
- [ ] AES-256 шифрование (roadmap)
|
||||
- [ ] SecurityAgent
|
||||
- [ ] Rate limiting
|
||||
- [ ] WAF правила
|
||||
|
||||
### Block 7: Testing
|
||||
|
||||
- [ ] Методология
|
||||
- [ ] QATesterAgent
|
||||
- [ ] FixAgent
|
||||
- [ ] UITestAgent
|
||||
|
||||
### Block 8: DevOps
|
||||
|
||||
- [ ] Docker (для VPS)
|
||||
- [ ] CI/CD (GitHub Actions)
|
||||
- [ ] Мониторинг
|
||||
- [ ] Бэкапы
|
||||
|
||||
---
|
||||
|
||||
## 4. Агенты
|
||||
|
||||
### Системные агенты (11)
|
||||
|
||||
| Агент | Файл | Статус |
|
||||
|-------|------|--------|
|
||||
| DocAgent | pp/agents/doc_agent.py | Roadmap |
|
||||
| AuditAgent | pp/agents/audit_agent.py | Roadmap |
|
||||
| SecurityAgent | pp/agents/security_agent.py | Roadmap |
|
||||
| SpecAgent | pp/agents/spec_agent.py | Roadmap |
|
||||
| ObserverAgent | pp/agents/observer_agent.py | Roadmap |
|
||||
| QATesterAgent | pp/agents/qa_tester_agent.py | Roadmap |
|
||||
| FixAgent | pp/agents/fix_agent.py | Roadmap |
|
||||
| UITestAgent | pp/agents/ui_test_agent.py | Roadmap |
|
||||
| RolloutAgent | pp/agents/rollout_agent.py | Roadmap |
|
||||
| EvolutionAgent | pp/agents/evolution_agent.py | Roadmap |
|
||||
| BacklogAgent | pp/agents/backlog_agent.py | Roadmap |
|
||||
|
||||
### ИИ-агенты (11 ролей)
|
||||
|
||||
| Роль | Промпт | Статус |
|
||||
|------|--------|--------|
|
||||
| Координатор | ✓ | |
|
||||
| Организатор задач | ✓ | |
|
||||
| Бизнес-аналитик | ✓ | |
|
||||
| Юрист | ✓ | |
|
||||
| Финансовый консультант | ✓ | |
|
||||
| Архитектор решений | ✓ | |
|
||||
| Тестировщик | ✓ | |
|
||||
| UI-дизайнер | ✓ | |
|
||||
| SMM-специалист | ✓ | |
|
||||
| Лайф-коуч | ✓ | |
|
||||
| Эксперт по доступности | ✓ | |
|
||||
|
||||
---
|
||||
|
||||
## 5. Инфраструктура
|
||||
|
||||
### Локальная разработка (Windows)
|
||||
|
||||
`
|
||||
Python 3.12+
|
||||
PostgreSQL (установлен локально)
|
||||
Redis (Windows compatible)
|
||||
`
|
||||
|
||||
### VPS (Ubuntu)
|
||||
|
||||
`
|
||||
Server: 0.0.0.0:8020 (временно IP:8020)
|
||||
PostgreSQL: localhost:5432
|
||||
Redis: localhost:6379
|
||||
Nginx: порт 80/443 (после домена)
|
||||
SSL: Let's Encrypt (после домена)
|
||||
`
|
||||
|
||||
---
|
||||
|
||||
## 6. Приоритеты
|
||||
|
||||
### Критический путь (MVP)
|
||||
|
||||
1. Block 0 (Rules) — завершён
|
||||
2. Block 1 (Core) — начать сразу
|
||||
3. Block 2 (Data) — модели БД
|
||||
4. Block 3 (API) — базовые endpoints
|
||||
5. Block 5 (Services + AI) — ядро функционала
|
||||
6. Block 4 (WebUI) — интерфейс
|
||||
|
||||
### Roadmap (после MVP)
|
||||
|
||||
- Мобильные приложения (iOS/Android)
|
||||
- Car integration (ГУ автомобиля)
|
||||
- Локальные ИИ-модели
|
||||
- Расширенная аналитика
|
||||
|
||||
---
|
||||
|
||||
## Чеклист начала работ
|
||||
|
||||
- [ ] Установить PostgreSQL локально
|
||||
- [ ] Создать виртуальное окружение Python
|
||||
- [ ] Настроить requirements.txt
|
||||
- [ ] Запустить Block 1: Core
|
||||
- [ ] Проверить работу API
|
||||
|
||||
---
|
||||
|
||||
*Документ создан: 2026-05-10*
|
||||
*Обновляется системными агентами автоматически*
|
||||
@@ -0,0 +1,41 @@
|
||||
services:
|
||||
app:
|
||||
build: .
|
||||
ports:
|
||||
- "8020:8020"
|
||||
env_file: .env
|
||||
depends_on:
|
||||
db:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_started
|
||||
volumes:
|
||||
- ./logs:/app/logs
|
||||
|
||||
worker:
|
||||
build: .
|
||||
command: celery -A app.tasks worker -l info
|
||||
env_file: .env
|
||||
depends_on:
|
||||
- db
|
||||
- redis
|
||||
|
||||
db:
|
||||
image: postgres:14
|
||||
environment:
|
||||
POSTGRES_DB: voidea
|
||||
POSTGRES_USER: voidea
|
||||
POSTGRES_PASSWORD: ${DB_PASS}
|
||||
volumes:
|
||||
- pgdata:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U voidea"]
|
||||
interval: 5s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
||||
redis:
|
||||
image: redis:7
|
||||
|
||||
volumes:
|
||||
pgdata:
|
||||
+300
@@ -0,0 +1,300 @@
|
||||
**Роль:** ты — старший архитектор ПО и продуктовый аналитик с опытом в создании гибридных ИИ-систем и кросс-платформенных приложений. Твоя задача — подготовить детальный план реализации приложения «Голос Идеи» (торговое название Voidea) с учётом требований безопасности, мультиплатформенности и отказоустойчивости. Проект будет реализован в OpenCode.
|
||||
|
||||
**Цель:** создать гибридное приложение (мобильное + веб) для фиксации и проработки идей с помощью группового ИИ-анализа. Приложение должно:
|
||||
|
||||
- работать в условиях нестабильного интернета или его полного отсутствия;
|
||||
|
||||
- обеспечивать максимальную защиту данных пользователя;
|
||||
|
||||
- предоставлять гибкий выбор ИИ-моделей (локальных и облачных);
|
||||
|
||||
- синхронизировать данные между устройствами через VPS с доменом voidea.ru.
|
||||
|
||||
|
||||
#### Ключевые требования
|
||||
|
||||
1. **Гибридная архитектура:** приоритет локальных вычислений с возможностью подключения платных облачных моделей.
|
||||
|
||||
2. **Отказоустойчивость:** автоматическое переключение на резервные модели при сбоях, работа в оффлайн-режиме.
|
||||
|
||||
3. **Безопасность:** шифрование AES-256, минимизация данных, контроль доступа.
|
||||
|
||||
4. **Мультиплатформенность:** поддержка iOS, Android, веб-версии (PWA).
|
||||
|
||||
5. **Гибкость настройки:** пользователь может выбирать модели для каждой роли ИИ-агента.
|
||||
|
||||
6. **Централизованная синхронизация:** использование VPS с доменом voidea.ru для хранения зашифрованных данных и управления API.
|
||||
|
||||
|
||||
#### Функциональные блоки для реализации
|
||||
|
||||
**1. Модуль голосового ввода**
|
||||
|
||||
- распознавание речи в реальном времени (онлайн и оффлайн);
|
||||
|
||||
- поддержка локальных моделей распознавания;
|
||||
|
||||
- сжатие аудио перед отправкой в облако (опционально).
|
||||
|
||||
|
||||
**2. Модуль управления ИИ-агентами**
|
||||
|
||||
- унифицированный интерфейс для всех моделей (локальных и облачных);
|
||||
|
||||
- цепочка приоритетов для выбора модели (основная платная → резервная платная → локальная по умолчанию → минимальная локальная);
|
||||
|
||||
- механизм автоматического переключения при сбоях;
|
||||
|
||||
- очередь отложенных задач (до 100 запросов, срок хранения — 7 дней).
|
||||
|
||||
|
||||
**3. Модуль синхронизации**
|
||||
|
||||
- кросс-платформенная синхронизация (iOS, Android, веб);
|
||||
|
||||
- алгоритм разрешения конфликтов (сохранение обеих версий при одновременном редактировании);
|
||||
|
||||
- выборочная синхронизация (пользователь может отключить передачу аудиозаписей);
|
||||
|
||||
- сжатие данных перед отправкой (алгоритм Brotli).
|
||||
|
||||
|
||||
**4. Модуль безопасности**
|
||||
|
||||
- шифрование AES-256 на устройстве и в облаке;
|
||||
|
||||
- TLS 1.3 при передаче данных;
|
||||
|
||||
- двухфакторная аутентификация (2FA) для доступа к API-ключам;
|
||||
|
||||
- биометрическая аутентификация (Face ID/Touch ID);
|
||||
|
||||
- политика хранения данных (голосовые записи — 1/7/30 дней по выбору пользователя).
|
||||
|
||||
|
||||
**5. Пользовательский интерфейс**
|
||||
|
||||
- **мобильные приложения** (iOS/Android): основной интерфейс для голосового ввода, работы в офлайн и с локальными ИИ-моделями;
|
||||
|
||||
- **веб-версия** (PWA): просмотр и редактирование заметок на ПК, управление настройками, синхронизация;
|
||||
|
||||
- раздел **«Настройки ИИ-агентов»**: таблица ролей с выпадающими списками моделей, индикатор статуса подключения, кнопка «Тест модели», переключатель «Автовыбор лучшей модели»;
|
||||
|
||||
- раздел **«Очередь запросов»**: просмотр и управление отложенными задачами;
|
||||
|
||||
- панель уведомлений с настройками каналов (push, email, Telegram) и режимом «тихих часов».
|
||||
|
||||
|
||||
#### Роли ИИ-агентов и их промпты
|
||||
|
||||
|Роль|Задача|Пример промта для ИИ|
|
||||
|---|---|---|
|
||||
|**Координатор**|Управляет диалогом, распределяет задачи, обобщает результаты|«Ты — координатор. Запусти обсуждение идеи с агентами, следи за логикой, обобщи результаты в структурированный текст. Отвечай кратко»|
|
||||
|**Организатор задач**|Разбивает идею на шаги, выстраивает план реализации|«Разбей идею на 5–7 последовательных шагов. Для каждого укажи срок (часы/дни) и ответственного (если применимо)»|
|
||||
|**Бизнес-аналитик**|Оценивает идею с точки зрения бизнес-показателей|«Оцени идею по критериям: ROI (%), срок окупаемости (месяцы), целевая аудитория (тыс. чел.), конкурентные преимущества. Кратко обоснуй»|
|
||||
|**Юрист**|Проверяет на соответствие законам РФ, выявляет риски|«Проанализируй идею на соответствие законодательству РФ (44-ФЗ, 152-ФЗ и т.д.). Укажи потенциальные риски и способы их минимизации»|
|
||||
|**Финансовый консультант**|Рассчитывает бюджет, прогнозирует доходы|«Составь смету реализации идеи: разработка, маркетинг, поддержка. Прогнозируй доход за год. Укажи точку безубыточности»|
|
||||
|**Архитектор решений**|Проектирует архитектуру системы|«Предложи 2 варианта архитектуры для реализации идеи (монолит/микросервисы). Укажи технологии (БД, бэкенд, фронтенд). Оцени сложность»|
|
||||
|**Тестировщик**|Предлагает сценарии тестирования|«Составь 5–10 тест-кейсов для проверки идеи. Укажи позитивные и негативные сценарии. Предложи инструменты автоматизации»|
|
||||
|**UI-дизайнер**|Прорабатывает внешний вид интерфейса|«Опиши 2 варианта дизайна главного экрана для идеи. Укажи цвета, шрифты, расположение элементов. Обоснуй выбор с точки зрения UX»|
|
||||
|**SMM-специалист**|Планирует продвижение в соцсетях|«Составь контент-план на месяц для продвижения идеи. Укажи платформы (ВК, Telegram и т.п.), форматы постов, хештеги, частоту публикаций»|
|
||||
|**Лайф-коуч**|Помогает ставить личные цели|«Помоги сформулировать цель по SMART на основе идеи. Разбей на квартальные этапы. Предложи метрики прогресса»|
|
||||
|**Эксперт по доступности**|Проверяет решения на инклюзивность|«Проанализируй идею с точки зрения доступности для людей с ОВЗ (слабовидящие, глухие и т.д.). Предложи доработки для соответствия WCAG 2.1»|
|
||||
|
||||
#### ИИ-модели для использования
|
||||
|
||||
**Бесплатные (локальные или с открытым API):** Llama 3, Mistral 7B, CodeLlama, OpenHermes 2.5, Phi-3, Yandex GPT (бесплатный тариф), Google Gemma, Qwen 2, DeepSeek, GigaChat.
|
||||
|
||||
**Платные (требуют API-ключа):** OpenAI GPT-4 Turbo, Anthropic Claude 3 Opus, Google Gemini Pro 1.5, Microsoft Copilot, Cohere Command R+, Perplexity AI, Yandex GPT Pro.
|
||||
|
||||
#### Архитектура системы
|
||||
|
||||
```
|
||||
Пользовательские устройства (iOS, Android, браузер)
|
||||
↓ (HTTPS через TLS 1.3)
|
||||
Домен voidea.ru (DNS-запись указывает на VPS)
|
||||
↓
|
||||
VPS-сервер (бэкенд + API)
|
||||
├── База данных (PostgreSQL/MongoDB) — зашифрованные заметки, настройки
|
||||
├── API-шлюз — обработка запросов от клиентов
|
||||
├── Модуль синхронизации — разрешение конфликтов, очередь задач
|
||||
└── Веб-интерфейс (React/Vue) — PWA для ПК
|
||||
└── Статические файлы (HTML, CSS, JS)
|
||||
```
|
||||
|
||||
**Компоненты VPS:**
|
||||
|
||||
- бэкенд-сервер (Node.js, Python FastAPI, Go);
|
||||
|
||||
- база данных (PostgreSQL с шифрованием);
|
||||
|
||||
- веб-сервер (Nginx/Apache) для статических файлов веб-версии;
|
||||
|
||||
- SSL-сертификат (Let’s Encrypt) для HTTPS;
|
||||
|
||||
- система резервного копирования (ежедневно в облако);
|
||||
|
||||
- мониторинг (Uptime Robot, Prometheus).
|
||||
|
||||
|
||||
---
|
||||
|
||||
### Общий план пошаговой реализации
|
||||
|
||||
**Этап 1. Исследование и проектирование**
|
||||
|
||||
- анализ аналогов и конкурентов;
|
||||
|
||||
- проектирование архитектуры системы;
|
||||
|
||||
- выбор стека технологий;
|
||||
|
||||
- разработка UI/UX-прототипа;
|
||||
|
||||
- составление детального ТЗ.
|
||||
|
||||
|
||||
**Этап 2. Разработка MVP**
|
||||
|
||||
- реализация модуля голосового ввода (с поддержкой оффлайн);
|
||||
|
||||
- создание базового модуля управления ИИ-агентами (поддержка 2–3 бесплатных моделей);
|
||||
|
||||
- разработка модуля синхронизации (базовая версия);
|
||||
|
||||
- внедрение основных функций безопасности (шифрование, авторизация);
|
||||
|
||||
- сборка прототипа интерфейса для мобильных платформ и веб-версии.
|
||||
|
||||
|
||||
**Этап 3. Расширение функционала**
|
||||
|
||||
- добавление всех ролей ИИ-агентов;
|
||||
|
||||
- интеграция платных моделей через API;
|
||||
|
||||
- реализация механизма резервирования и очереди отложенных задач;
|
||||
|
||||
- доработка модуля синхронизации (алгоритм разрешения конфликтов);
|
||||
|
||||
- улучшение интерфейса (настройки ИИ, очередь запросов, уведомления).
|
||||
|
||||
|
||||
**Этап 4. Тестирование и оптимизация**
|
||||
|
||||
- юнит-тесты для каждого модуля;
|
||||
|
||||
- нагрузочное тестирование (проверка работы при 100+ одновременных пользователей);
|
||||
|
||||
- тестирование сценариев отказа (отключение интернета, сбои API);
|
||||
|
||||
- оптимизация производительности (квантование моделей, сжатие данных);
|
||||
|
||||
- сбор обратной связи от тестовой группы.
|
||||
|
||||
|
||||
### Этап 5. Запуск и поддержка (постоянно)
|
||||
|
||||
|
||||
**1. Релиз бета-версии (ограниченный круг пользователей)**
|
||||
* запуск закрытой бета-версии для тестовой группы (50–100 первых пользователей);
|
||||
* настройка системы сбора обратной связи (встроенные формы, чат поддержки);
|
||||
* развёртывание мониторинга ошибок и производительности (Sentry, Prometheus + Grafana);
|
||||
* подготовка документации для бета-тестеров: руководство пользователя, FAQ, контакты поддержки;
|
||||
* настройка A/B-тестирования ключевых функций (например, сравнение разных алгоритмов синхронизации).
|
||||
|
||||
**2. Мониторинг стабильности и производительности**
|
||||
* отслеживание ключевых метрик:
|
||||
* время ответа сервера (целевое: < 500 мс);
|
||||
* доступность API (целевое: 99,9 % uptime);
|
||||
* скорость распознавания речи (онлайн/офлайн);
|
||||
* время обработки запросов ИИ-агентами;
|
||||
* потребление памяти и CPU на мобильных устройствах;
|
||||
* мониторинг ошибок в реальном времени (логирование без персональных данных);
|
||||
* анализ нагрузки на VPS (CPU, RAM, дисковое пространство, трафик);
|
||||
* автоматическое оповещение команды при превышении пороговых значений (например, задержка ответа > 2 с).
|
||||
|
||||
**3. Сбор и анализ обратной связи**
|
||||
* проведение опросов пользователей (NPS, оценка удобства интерфейса);
|
||||
* анализ сценариев использования (какие функции востребованы, какие — нет);
|
||||
* сбор предложений по улучшению функционала;
|
||||
* выявление «узких мест» (сложные настройки, непонятные уведомления);
|
||||
* создание публичного roadmap с приоритетами на основе отзывов.
|
||||
|
||||
**4. Итеративные обновления**
|
||||
* выпуск патчей для исправления критических ошибок (в течение 24 часов);
|
||||
* регулярные обновления (каждые 2–4 недели):
|
||||
* добавление новых ИИ-моделей;
|
||||
* улучшение алгоритмов синхронизации;
|
||||
* оптимизация производительности;
|
||||
* расширение списка ролей ИИ-агентов;
|
||||
* внедрение фич из roadmap (по приоритету).
|
||||
|
||||
**5. Техническая поддержка**
|
||||
* организация каналов поддержки:
|
||||
* чат в приложении;
|
||||
* Telegram-бот для быстрых вопросов;
|
||||
* email для сложных запросов;
|
||||
* база знаний (FAQ, видеоуроки, инструкции);
|
||||
* SLA (соглашение об уровне обслуживания):
|
||||
* ответ на запрос — в течение 4 часов;
|
||||
* решение критической ошибки — в течение 24 часов.
|
||||
|
||||
**6. Безопасность и соответствие нормам**
|
||||
* регулярный аудит безопасности (ежеквартально):
|
||||
* проверка SSL-сертификатов;
|
||||
* тестирование на уязвимости (OWASP Top 10);
|
||||
* анализ логов на подозрительную активность;
|
||||
* обновление политик конфиденциальности и пользовательского соглашения;
|
||||
* обеспечение соответствия 152-ФЗ (защита персональных данных в РФ);
|
||||
* резервное копирование данных (ежедневно, хранение копий 30 дней).
|
||||
|
||||
**7. Масштабирование инфраструктуры**
|
||||
* мониторинг ресурсов VPS:
|
||||
* при достижении 80 % загрузки — апгрейд сервера или переход на кластер;
|
||||
* оптимизация базы данных:
|
||||
* индексация часто запрашиваемых полей;
|
||||
* архивирование старых заметок (старше 1 года);
|
||||
* кэширование «горячих» данных (Redis/Memcached);
|
||||
* балансировка нагрузки между серверами (при росте аудитории).
|
||||
|
||||
**8. Маркетинг и рост аудитории**
|
||||
* запуск открытой бета-версии (регистрация через voidea.ru);
|
||||
* продвижение в соцсетях (Telegram, VK, YouTube):
|
||||
* кейсы пользователей («Как Voidea помог реализовать идею»);
|
||||
* обзоры функционала;
|
||||
* партнёрства с сообществами разработчиков, стартапов, фрилансеров;
|
||||
* реферальная программа (бонусы за приглашение друзей);
|
||||
* участие в профильных конференциях и хакатонах.
|
||||
|
||||
**9. Монетизация (поэтапное внедрение)**
|
||||
* freemium-модель:
|
||||
* базовый функционал — бесплатно (локальные модели, ограниченная синхронизация);
|
||||
* премиум-тариф — доступ к платным ИИ-моделям, расширенная синхронизация, приоритетная поддержка;
|
||||
* корпоративные тарифы (для команд):
|
||||
* совместный доступ к заметкам;
|
||||
* админ-панель управления пользователями;
|
||||
* кастомные роли ИИ-агентов.
|
||||
|
||||
**10. Долгосрочное развитие**
|
||||
* интеграция с внешними сервисами:
|
||||
* Trello, Notion, Jira (экспорт задач);
|
||||
* Google Calendar (напоминания);
|
||||
* Miro (визуализация идей);
|
||||
* развитие голосового интерфейса:
|
||||
* поддержка многоязычного ввода;
|
||||
* распознавание акцентов;
|
||||
* исследование новых ИИ-технологий (например, мультимодальные модели);
|
||||
* локализация приложения на другие языки (английский, испанский и т.д.).
|
||||
|
||||
---
|
||||
|
||||
### Ключевые показатели успеха (KPI) для этапа запуска и поддержки
|
||||
|
||||
* **активные пользователи:** 1 000+ MAU через 3 месяца после открытого релиза;
|
||||
* **удержание:** 40 % пользователей возвращаются в приложение 2+ раза в неделю;
|
||||
* **оценка в магазинах:** ≥ 4,5 звезды в App Store и Google Play;
|
||||
* **NPS:** ≥ 50 (индекс лояльности);
|
||||
* **время решения проблемы:** среднее время ответа поддержки ≤ 4 часов;
|
||||
* **стабильность:** uptime API ≥ 99,9 %;
|
||||
* **безопасность:** отсутствие утечек данных за период эксплуатации.
|
||||
Reference in New Issue
Block a user