# ROADMAP — zov-tech CRM MiniApp > Обновляется агентами автоматически. Последнее обновление: 2026-05-18 (вечер) --- ## 🎯 Продуктовая цель Telegram MiniApp для 112 менеджеров салонов ЗОВ: подбор техники, замеры, сборки, CRM-клиенты. Привязка менеджеров к куратору через инструмент. Клиентский кабинет — воронка покупки. --- ## ✅ Готово (реализовано) ### Инфраструктура - [x] VPS на Docker (FastAPI + aiogram + Caddy) - [x] GitHub Pages для MiniApp (auto-deploy при push в master) - [x] Google Sheets как БД - [x] HMAC-SHA256 аутентификация через Telegram initData - [x] Pre-push hook: CSS-линтер + UI Playwright блокируют сломанный код - [x] CI: GitHub Actions запускает тесты при каждом push ### Модули MiniApp (менеджер/admin) - [x] Список клиентов + поиск + карточка клиента - [x] Создание/редактирование клиента - [x] Замеры: создание, фото, закрытие заявки - [x] Заявка на замер (назначение замерщику) - [x] Сборки: создание, список, детальная карточка - [x] Подбор техники (proposals): создание, варианты, голосование клиента - [x] Подбор через AI (GigaChat/Claude) - [x] Приватность клиентских данных (имена/телефоны скрыты визуально) - [x] 4 темы оформления: Default, Foundry, Boardroom, Atelier - [x] Экран #/me — профиль для всех ролей (менеджер / сотрудник / клиент) - [x] Экран #/master — входящие заявки для замерщика/сборщика - [x] Экран #/inbox — входящие задачи менеджера (решение по подбору) ### Качество - [x] 15-секундный таймаут на все fetch-запросы (все модули) - [x] CSS-линтер (запрещённые паттерны + WCAG-контраст) - [x] Smoke API тесты (12 эндпоинтов) - [x] Полный тест кабинета менеджера (19 сценариев) - [x] UI Playwright smoke (15 проверок — все экраны включая #/inbox, #/me) - [x] CI: smoke-ui.yml — Playwright против GitHub Pages после каждого деплоя - [x] Docker login на VPS (без 429 при ребилде) --- ## 🔄 В работе | Задача | Агент | Статус | |--------|-------|--------| | Доступ сервисного аккаунта к Google Drive (отгрузки/поступления) | devops | ⏳ ждём подтверждения | --- ## 📋 Бэклог (приоритизирован) ### Приоритет 1 — Завершение MVP менеджера - [x] Экран «Мой статус» — #/me реализован - [x] Входящие задачи менеджера — #/inbox реализован - [ ] Отгрузки и поступления склада (⏳ блокер: share Drive с zov-backend@zov-sborka.iam.gserviceaccount.com) ### Приоритет 2 — Клиентский кабинет - [ ] Базовый клиентский экран (сейчас только `#/picker`) - [ ] История заказов клиента - [ ] Самозамер (5-шаговая форма для клиента) - [ ] Калькулятор стоимости кухни ### Приоритет 3 — Аналитика и управление - [ ] Дашборд куратора: активность менеджеров, воронка сделок - [ ] Реестр менеджеров: поле `last_order_date`, 90-дневный контроль активности - [ ] Метрики: количество замеров, подборов, сборок по менеджеру ### Приоритет 4 — Монетизация - [ ] Платёжная интеграция (Telegram Stars / ЮKassa) - [ ] Статусы подписки менеджеров (бесплатно / платно) ### Технический долг - [ ] `Content-Type: application/json` в `_fetchWithTimeout` (все модули) - [ ] Аудит `app.js` роутера на edge cases - [ ] Тест карточки клиента в Playwright (нужна фикстура) - [ ] Staging-окружение (отдельный VPS или Docker Compose override) --- ## 🚫 Не в скоупе (решение принято) - Нативное мобильное приложение (остаётся MiniApp) - База знаний, Обучение, FAQ (отдельный продукт) - Партнёрская комиссия от производителей