2.8 KiB
Raw Blame History

Frontend Shared Boundary Cleanup

Дата: 2026-06-23 Статус: выполнено

Контекст

FSD-миграция уже убрала большую часть legacy-imports, но после крупного рефакторинга обычно остаются тонкие границы, которые сложно заметить без отдельного аудита: слишком широкий shared public API, дублирующие экспортные точки, и отдельные cross-layer или cross-entity dependencies, которые формально работают, но ухудшают архитектурную ясность.

Эта фича нужна, чтобы сузить shared/public surface и убрать архитектурные серые зоны без изменения поведения экранов.

Цель

Сделать frontend layer boundaries более явными: shared должен экспортировать только truly shared поверхность, а доменные сущности и виджеты должны общаться через свои public entrypoints.

Требования

1. Сузить shared public API

apps/frontend/src/shared/api должен содержать только то, что действительно используется как shared инфраструктура. Доменная поверхность должна быть разнесена по своим entity API/entrypoints.

2. Устранить boundary ambiguity

Любые архитектурно сомнительные cross-entity или cross-widget зависимости должны либо быть убраны, либо явно перенесены на public barrel entrypoints.

3. Сохранить runtime behavior

Изменения должны быть ограничены реорганизацией импортов и export boundaries. Бизнес-логика и UI поведение не меняются.

4. Зафиксировать public API правила

Фича должна завершиться с понятным описанием того, что считается public API каждого frontend слоя.

Ограничения

  • Не выполнять UI redesign.
  • Не менять backend contracts.
  • Не переписывать feature logic вне boundary cleanup.

Критерии приемки

  • Shared API surface стал уже и понятнее, чем до фичи.
  • Cross-layer / cross-entity зависимости используют public barrels или удалены.
  • Описание public API слоёв frontend обновлено в docs.
  • Поведение UI и API-контракты не изменились.