# Frontend FSD Cleanup — задачи Статус: выполнено ## 1. Разорвать цепочку entity shims - [x] Переписать `entities/broker-position/api/brokerPositionApi.ts` на прямой вызов `shared/api/client` - [x] Переписать `entities/broker-operation/api/brokerOperationApi.ts` на прямой вызов `shared/api/client` - [x] Проверить `npm test -w apps/frontend` ## 2. Переключить потребителей shim на FSD-импорты - [x] Удалены вместе с `pages/broker/` (BrokerPages.test.tsx, BrokerAccountsPage.test.tsx) - [x] Обновить `test/test-utils.tsx` — `AuthProvider` → `SessionProvider` из `app/providers/SessionProvider` - [x] Обновить `hooks/useAuth.test.tsx` — `AuthProvider` → `SessionProvider` (удалён на шаге 4) - [x] Обновить `entities/session/model/useSession.test.tsx` — `AuthProvider` → `SessionProvider` - [x] Проверить `npm test -w apps/frontend` ## 3. Удалить shim-файлы ### api/ - [x] Удалить `api/auth.ts`, `api/client.ts`, `api/portfolio.ts`, `api/responses.ts`, `api/types.ts` - [x] Удалить `api/broker.test.ts` ### hooks/ - [x] Удалить все файлы кроме `useScreener.ts` ### context/ - [x] Удалить `context/AuthContext.tsx` - [x] Удалить `context/AuthContext.test.tsx` ### components/ - [x] Удалить все flat shims ### pages/ flat shims - [x] Удалить `pages/HomePage.tsx`, `pages/StockPage.tsx`, `pages/BondPage.tsx` ### pages/broker/ - [x] Удалить весь каталог `pages/broker/` ### Корень src/ - [x] Удалить `routes.tsx` - [x] Проверить `npm test -w apps/frontend` ## 4. Удалить тесты, привязанные к shim-файлам - [x] Удалены 17 тестовых файлов - [x] Исправлен `api/screener.ts` — импорты из `./client` → `@/shared/api/client` ## 5. Удалить api/broker.ts - [x] Удалить `api/broker.ts` - [x] Проверить `npm test -w apps/frontend` ## 6. Обновить документацию - [x] Обновить `apps/docs/docs/frontend/hooks.md` - [x] Обновить `apps/docs/docs/frontend/routes.md` - [x] Проверить `npm run build -w apps/docs` ## 7. Финальная верификация - [x] `npm test -w apps/frontend` — PASS (23 files, 112 tests) - [x] `npm run lint -w apps/frontend` — PASS - [x] `npm run build -w apps/frontend` — PASS - [x] `npm run build -w apps/docs` — PASS - [x] Legacy import check — no matches