[Refactor] Сделать межмодульную границу tbank-sync явной и проверяемой #118

Closed
opened 2026-10-20 05:00:26 +03:00 by codex-bot · 0 comments
Owner

Проблема

Аудит main/audits/2026-10-19-code-quality-architecture/02-findings.md, CQ-001 и CQ-019: четыре модуля импортируют tbank-sync.repository.ts напрямую; декларируемая граница скрытой persistence не обеспечена правилом импортов.

Результат и scope

Установить узкий публичный внутренний контракт для существующих потребителей tbank-sync, перенаправить межмодульные импорты и закрепить реально выбранную границу проверкой. Сохранить DI, функциональность sync и публичные HTTP endpoints; вопрос поддержки status/observe отдельно рассматривается в backend#64. Слои/новый barrel добавлять только если они действительно проясняют owner, а не для симметрии.

Acceptance Criteria

  • Portfolio, operations, brokerage-accounts и upcoming-events не импортируют приватную реализацию tbank-sync напрямую; используемый ими контракт перечислен и ревьюируем.
  • Архитектурная проверка предотвращает возврат тех же обходных межмодульных импортов, не запрещая законные внутренние импорты.
  • Поведение и DI для четырёх потребителей сохранены; сборка, архитектурные проверки и релевантные тесты проходят.
  • Не меняется доступность legacy HTTP endpoints до решения backend#64.

Источник: аудит 2026-10-19, CQ-001/019; план, пункт 7. Цикл импортов CQ-002 — отдельный результат.

## Проблема Аудит `main/audits/2026-10-19-code-quality-architecture/02-findings.md`, CQ-001 и CQ-019: четыре модуля импортируют `tbank-sync.repository.ts` напрямую; декларируемая граница скрытой persistence не обеспечена правилом импортов. ## Результат и scope Установить узкий публичный внутренний контракт для существующих потребителей `tbank-sync`, перенаправить межмодульные импорты и закрепить реально выбранную границу проверкой. Сохранить DI, функциональность sync и публичные HTTP endpoints; вопрос поддержки status/observe отдельно рассматривается в [backend#64](https://git.personal.ksv741.ru/WealthLedger/backend/issues/64). Слои/новый barrel добавлять только если они действительно проясняют owner, а не для симметрии. ## Acceptance Criteria - [ ] Portfolio, operations, brokerage-accounts и upcoming-events не импортируют приватную реализацию `tbank-sync` напрямую; используемый ими контракт перечислен и ревьюируем. - [ ] Архитектурная проверка предотвращает возврат тех же обходных межмодульных импортов, не запрещая законные внутренние импорты. - [ ] Поведение и DI для четырёх потребителей сохранены; сборка, архитектурные проверки и релевантные тесты проходят. - [ ] Не меняется доступность legacy HTTP endpoints до решения backend#64. Источник: аудит 2026-10-19, CQ-001/019; план, пункт 7. Цикл импортов CQ-002 — отдельный результат.
codex-bot added the
Priority
Medium
3
Kind/Refactor
labels 2026-10-20 05:00:26 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: WealthLedger/backend#118