codex/backend-architecture-improvements #47

Merged
ksv741 merged 9 commits from codex/backend-architecture-improvements into main 2026-06-25 21:09:15 +03:00
2 changed files with 20 additions and 0 deletions
Showing only changes of commit 58ddb10a92 - Show all commits

View File

@ -358,6 +358,15 @@ cash flow, бюджеты, аналитика, прогнозы и автома
> фичи: `frontend-docs-sync`, `frontend-infrastructure-hardening`, `frontend-shared-boundary-cleanup`,
> `frontend-test-hygiene`. Пункт P2 «Двойная система API-типов» — resolved (codegen unification).
> Остальные пункты ниже остаются открытыми и нуждаются в отдельных фичах.
>
> **Обновление 2026-06-25:** Проведён аудит бэкенда (`docs/research/2026-06-25-backend-audit.md`),
> выявивший 12 архитектурных проблем. В рамках эпика `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()`
Текущее состояние quality gates хорошее: на момент аудита проходят lint, format-check, backend build,
frontend build, 94 backend-теста и 168 frontend-тестов.
@ -418,6 +427,8 @@ frontend build, 94 backend-теста и 168 frontend-тестов.
### P2: декомпозировать крупные backend/frontend модули
- [x] **MoexClientService split (backend)** — God Service (423 строки, 11 методов) разделён на
`MoexHttpClient` + 5 доменных клиентов. `@Global()` убран. Реализовано в `backend-architecture-improvements`.
- `PortfolioService` объединяет CRUD, ownership, MOEX enrichment, кеширование, расчёты PnL,
дивиденды и агрегированную аналитику.
- Broker UI содержит крупные страницы, таблицы и монолитный test suite; это усложнит FSD-миграцию и

View File

@ -90,6 +90,15 @@ Roadmap отражает порядок продуктовой работы, н
- [x] [frontend-test-hygiene](features/frontend-test-hygiene/spec.md) — минимизация test helpers,
нормализация conventions
### [Backend Architecture Improvements](features/backend-architecture-improvements/spec.md)
- [x] Shared envelope DTO — единый `ApiResponseMeta` вместо 6 дублирующихся классов
- [x] Screener TTL — отдельный кеш-параметр `CACHE_SCREENER_TTL` (900s)
- [x] Domain exception hierarchy — `DomainException`, `EntityNotFoundException`, `MoexApiException`, `TBankApiException`
- [x] Health check прокачка — проверки Prisma, MOEX, T-Bank с детальным статусом
- [x] RequestLoggingMiddleware — подключение через `configure()` в AppModule
- [x] MoexClientService split — 6 клиентов вместо God Service, убран `@Global()`
## Кандидаты следующих фич
- [x] [Миграция таблиц на дизайн-систему](features/table-migration/spec.md) — DividendsTable,