moex-vibe/docs/roadmap.md

10 KiB
Raw Blame History

Roadmap

Roadmap отражает порядок продуктовой работы, но сам по себе не является основанием для реализации. Требования и разрешение на реализацию определяются спецификацией конкретной фичи и текущей задачей пользователя.

Завершённые эпики

Аутентификация

  • auth-system — полноценная регистрация, вход, JWT + refresh token, страницы login/register/profile, session provider.

Документация

DevOps

  • ci-cd — Gitea Actions: lint, test, build всех пакетов + Storybook.
  • pre-commit-checks — Husky + lint-staged.

Активные эпики

Backend Architecture

Цель: удерживать backend-архитектуру, security boundaries и published contracts в состоянии, пригодном для безопасного развития продукта.

  • Backend Architecture Improvements — envelope DTO, screener TTL, domain exceptions, health checks, middleware DI, MoexClient split.
  • Backend Architecture Refactor — refactor-only итерация: error masking, production config hardening, DTO validation, typed T-Bank boundary, cache metadata, backend docs sync.

Портфель брокера

Цель: дать пользователю целостный доступ к реальным брокерским счетам T-Bank.

Портфельная страница

Цель: страница управления портфелями — создание, аналитика, распределение.

Контроль качества

Крупные завершённые работы (вне эпиков)

Backend Architecture Improvements

  • Shared envelope DTO — единый ApiResponseMeta вместо 6 дублирующихся классов
  • Screener TTL — отдельный кеш-параметр CACHE_SCREENER_TTL (900s)
  • Domain exception hierarchy — DomainException, EntityNotFoundException, MoexApiException, TBankApiException
  • Health check прокачка — проверки Prisma, MOEX, T-Bank с детальным статусом
  • RequestLoggingMiddleware — подключение через configure() в AppModule
  • MoexClientService split — 6 клиентов вместо God Service, убран @Global()

Кандидаты следующих фич

Ниже опубликован canonical architecture backlog после architecture-quality-backlog. Старые granular заметки folded into these tracks и не должны вестись как параллельные независимые backlog-списки.

  • Миграция таблиц на дизайн-систему — DividendsTable, ScreenerTable, SharePositionTable, BondPositionTable мигрированы на DataTable. Legacy shared/ui/Table и TableSkeleton удалены.
  • T-Bank data isolation and ownership boundaries (P0/P1) — изоляция T-Bank данных по пользователям, ownership model и backend query boundary до следующих data-flow изменений
  • Backend runtime and auth hardening (P1) — отдельная security/runtime policy итерация: rate limiting, auth surface hardening, explicit production rules
  • Local T-Bank read-path (P1) — локальная persisted read-модель операций/истории вместо прямого read-through из T-Bank
  • Session model for multiple surfaces (P1/P2) — device-level sessions, rotation, reuse detection, явный session contract для нескольких клиентских поверхностей
  • Contract, type-safety, and frontend delivery hardening (P2/P3) — устранение остаточного as any, укрепление API/query boundaries, quality/performance gates и lazy-loading budgets
  • Broker portfolio value history (P2/P3) — хранить снапшоты стоимости брокерского счёта и показать график динамики портфеля на дашборде
  • Broker-events — UX доработки и смешанный календарь.