refactor: retire legacy tbank-sync status and sync=observe (WealthLedger/backend#196) #197

Merged
codex-bot merged 1 commits from refactor/196-retire-legacy-sync-read into develop 2026-11-05 22:33:14 +03:00
Owner

Изменения

  • Удалён публичный GET /api/v1/tbank-sync/{id} (контроллер, сервис, TbankSyncStatusDto, TbankSyncRepository.read, screenIntent). Читал только legacy screen: строки, которые больше не пишутся.
  • Удалён публичный query sync=observe на всех investment read-маршрутах (stocks, bonds, income-analytics, upcoming-events). Параметр больше не валидируется: whitelist ValidationPipe его отбрасывает, ответ не меняется. Внутренние observe-пути, которые используют живые процессы, сохранены.
  • Удалён мёртвый CatalogDiscoveryService observe-ветки и CatalogDiscoveryRepository-зависимость; BrokerageOperationsService.collectRanges всегда планирует загрузку на обычном чтении.
  • Тесты переписаны на наблюдаемый контракт: параметр игнорируется, status не публикуется в OpenAPI, sync не объявлен ни на одном маршруте.
  • eslint-suppressions.json: удалены подавления для удалённых файлов (--prune-suppressions).

Совместимость (breaking)

Owner разрешил удаление без окна совместимости: access logs и список внешних потребителей недоступны, поэтому «нет внешних потребителей» не утверждается. Rollback: предыдущий backend image/commit; миграции БД нет, данные не удалены.

Проверки

  • npm run verify: PASS (45 suites / 331 тест, lint, typecheck, build).
  • node test/sqlite.cjs --all: PASS (21 suite).
  • npm run test:openapi-contract: PASS. git diff --check: PASS.

Frontend PR, который перегенерирует src/shared/api/spec/openapi.json (сейчас содержит /api/v1/tbank-sync/{id}), нужен отдельно. Closes WealthLedger/backend#196.

## Изменения - Удалён публичный `GET /api/v1/tbank-sync/{id}` (контроллер, сервис, `TbankSyncStatusDto`, `TbankSyncRepository.read`, `screenIntent`). Читал только legacy `screen:` строки, которые больше не пишутся. - Удалён публичный query `sync=observe` на всех investment read-маршрутах (stocks, bonds, income-analytics, upcoming-events). Параметр больше не валидируется: whitelist ValidationPipe его отбрасывает, ответ не меняется. Внутренние `observe`-пути, которые используют живые процессы, сохранены. - Удалён мёртвый `CatalogDiscoveryService` observe-ветки и `CatalogDiscoveryRepository`-зависимость; `BrokerageOperationsService.collectRanges` всегда планирует загрузку на обычном чтении. - Тесты переписаны на наблюдаемый контракт: параметр игнорируется, status не публикуется в OpenAPI, `sync` не объявлен ни на одном маршруте. - `eslint-suppressions.json`: удалены подавления для удалённых файлов (`--prune-suppressions`). ## Совместимость (breaking) Owner разрешил удаление без окна совместимости: access logs и список внешних потребителей недоступны, поэтому «нет внешних потребителей» не утверждается. Rollback: предыдущий backend image/commit; миграции БД нет, данные не удалены. ## Проверки - `npm run verify`: PASS (45 suites / 331 тест, lint, typecheck, build). - `node test/sqlite.cjs --all`: PASS (21 suite). - `npm run test:openapi-contract`: PASS. `git diff --check`: PASS. Frontend PR, который перегенерирует `src/shared/api/spec/openapi.json` (сейчас содержит `/api/v1/tbank-sync/{id}`), нужен отдельно. Closes WealthLedger/backend#196.
codex-bot added 1 commit 2026-11-05 22:23:08 +03:00
refactor: retire legacy tbank-sync status and sync=observe (WealthLedger/backend#196)
Backend verify / commits (pull_request) Successful in 1m25s
Backend verify / security (pull_request) Successful in 1m8s
Backend verify / verify (pull_request) Successful in 6m20s
d1c5f575cf
codex-bot merged commit d792baaf59 into develop 2026-11-05 22:33:14 +03:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: WealthLedger/backend#197