Files
Messenger/docs/android-roadmap.md
benya 3c855d78a6
Some checks are pending
CI / test (push) Has started running
docs: add android checklist and prioritized roadmap
2026-03-08 22:59:33 +03:00

111 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Android Roadmap (до production)
## Принципы
- Backend/API уже есть: Android строим поверх текущего контракта (`/auth`, `/chats`, `/messages`, `/realtime`, `/media`).
- Сначала закрываем core-мессенджер, потом polish.
- Каждая фаза завершается demo + regression check.
## Phase 0: Foundation (1-2 недели)
**Цель:** запустить каркас приложения и базовую сетевую инфраструктуру.
### Scope
- Проектная архитектура, DI, навигация.
- Retrofit/OkHttp + auth/refresh.
- Room + DataStore заготовки.
- Базовый theme system и design tokens.
- Экран логина (email-first).
### DoD
- Можно авторизоваться и получить `me`.
- Сборка/линт/тесты в CI зеленые.
## Phase 1: Web-Core parity MVP (3-5 недель)
**Цель:** довести Android до текущего рабочего web-core.
### Scope
- Chat list: unread/mentions/pin/archive/mute badges.
- Chat screen: send/read/reply/edit/delete/forward/reactions.
- Realtime: receive/update/delete/typing/read/delivered/presence.
- Media: image/video/file/audio upload + viewer.
- Voice: record (hold/lock/cancel) + playback + waveform.
- Groups/channels roles/permissions, invite links.
### DoD
- Основные пользовательские сценарии проходят без перезапуска.
- Нет blocker-багов по auth/chat/realtime/media.
## Phase 2: Stability & Security (2-3 недели)
**Цель:** сделать релизно-устойчивую версию.
### Scope
- Offline queue + reconcile после reconnect.
- Session management + 2FA + recovery codes UX.
- Crash reporting + performance baseline.
- Deep link handling (`verify-email`, `join`, `open chat/message`).
- Расширенное тестирование (unit/integration/ui).
### DoD
- Crash-free rate целевой для internal beta.
- Критичные сценарии покрыты автотестами.
## Phase 3: Product polish (2-4 недели)
**Цель:** UX-качество уровня “приятно ежедневно использовать”.
### Scope
- Chat info polish (media tabs, links, jump to message).
- Контекстные меню и жесты без конфликтов.
- Тонкая настройка тем (light/dark readability).
- Улучшение поиска и навигации по результатам.
- Accessibility pass.
### DoD
- UX-bug backlog снижен до low/medium.
- Продуктовая приемка по ключевым flows.
## Phase 4: Release (1-2 недели)
**Цель:** выкладка в production.
### Scope
- FCM push production config.
- Подготовка Play Console, privacy, release notes.
- Staged rollout (5% -> 25% -> 100%).
- Monitoring и incident runbook.
### DoD
- Успешный staged rollout без критических откатов.
## Приоритеты (P0/P1/P2)
### P0 (обязательно до релиза)
- Auth + refresh + logout cleanup
- Chat list + chat screen core actions
- Realtime стабильность
- Media upload/view + voice record/playback
- Roles/permissions для group/channel
- Crash reporting + минимальные тесты
### P1 (сразу после P0)
- Search UX
- Chat info/media tabs
- Advanced formatting/threads polish
- Better offline UX
### P2 (после релиза)
- Дополнительные эффекты/анимации
- Расширенная аналитика
- Экспериментальные UX-фичи
## Оценка сроков
- Реалистично до strong beta: **8-12 недель**.
- До стабильного production с полировкой: **10-16 недель**.
## Риски
- Drift между web и android поведением.
- Realtime race conditions при нестабильной сети.
- Media edge-cases (mime/duration/seek).
- Permission UX (микрофон/уведомления) на разных Android версиях.
## Следующий практический шаг
1. Заморозить API-контракт (OpenAPI snapshot).
2. Поднять Android skeleton (Phase 0).
3. Зафиксировать Definition of Done для Phase 1 demo.