# 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-контракты не изменились.