# 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.