SaaS-мониторинг Telegram: ядро (модули Cards/Kanban/Pipeline/Tenants/Settings/ Discovery, Api, Infrastructure), сервисы telegram/ai/ml/storage, фронт Vue, контракты и grpc-hosting, деплой-конфиги (dev/prod/observability/CI-раннер), Gitea Actions CI, документация (ТЗ, техдок, api-map, код-стайл, планы, бэклог). Текущее состояние: все этапы роадмапа 0–12 закрыты, сборка 5 sln 0/0, тесты 1340/130/52/38/9 зелёные.
1.5 KiB
Task 9: Фронтенд — кандидаты, действия, чёрный список, история
Files:
- Modify:
frontend/src/views/DiscoveryView.vue
Interfaces:
-
Consumes: Task 8 (store).
-
Step 1: Табы панели задачи: «В обработке» (
new) / «На рассмотрении» (review) / «Вступили» (joined) / «Отклонены» (rejected) + «История» (лог). Бейджи счётчиков скрыты при 0. -
Step 2: Карточка кандидата: название, @username, kind-иконка/метка (канал/группа/форум), метки marks (чипы: закрытая, не прочитан, участники/язык не подтверждены, мало сообщений), участники, «подходит X из N», кнопки «Вступить и мониторить» / «Отклонить» (только для review). Форум → раскрывающийся список topics («тема — подходит X из N»).
-
Step 3: Чёрный список (под списками или отдельный таб) — снять источник; «Настройки квот» — popover/inline с
discJoinLimit/discJoinDelayMin/discJoinDelayMax+ стоп-кран (PATCH /api/settings). -
Step 4: История — лог задачи.
-
Step 5:
npm run build— без ошибок; визуальная проверка основных сценариев (Task 10).