## Why В ветке `AURORA-1589` (PR RSHB/arm-core#166, автор — Степанов, задача AURORA-1589) фронт доводит экраны консолидаций до макета: список консолидаций ГК [34] с «Взять в работу» и перехватом [35], модалку «Новая консолидация» [42] и кнопку «Изменить статус» в карточке версии [30] с модалкой [33-01]. Бэкенд этих действий уже в main (`consolidations-api`: список с `in_work_only`, блокировка и перехват, ручная смена статуса). У экранов нет UI-спеки. Спеку, документацию и тесты ведёт ревьюер коммитами в ветку автора (правило владельца). После ревью раунда 1 владелец решил (23.10.2026) довести PR самим в этой же ветке: расхождения кода с целевой спекой (бывшие «Known issues» `design.md`) исправлены ревьюером, коммит 71ef633 («Единицы» сводной ОСВ) остаётся в PR и тоже исправлен. ## What Changes Репозиторий — только arm-core (`web/`). Эндпоинты arm-core (без изменений): `GET /company-groups/{id}/consolidations` (`in_work_only`), `GET /consolidations/versions/{id}`, `POST /consolidations/versions/{id}/lock` (`takeover_reason`), `POST /consolidations/versions/{id}/status`, `POST /consolidations`. - Список консолидаций [34]: колонки, дерево версий с номером только у версий 2+, фильтр «Только в работе» (выключен по умолчанию), «Взять в работу» с подтверждением [35] и перехватом с причиной, неактивные пункты меню «⋯». - Панель «Организации» без выбранной консолидации и серый статус «Отсутствует». - Подписи статусов версии («Корректировка данных», «Отменена») и пояснение статуса под заголовком карточки. - Модалка «Новая консолидация» [42]: ИНН отдельной колонкой, «+ Создать», без звёздочек обязательности. - «Изменить статус» [33-01]: допустимые переходы — зеркало `MANUAL_TRANSITIONS` бэка, по умолчанию ничего не выбрано, кнопка доступна только владельцу блокировки и при наличии ручных переходов. - Модалка [31-00] «Остались неуказанные ИНН» при уходе со «Сводной ОСВ» на другую вкладку отчёта. - Предупреждение браузера о несохранённых правках в модалках этих экранов («Взять в работу» с причиной, «Изменить статус», «Новая консолидация»). - Сводная ОСВ [30]: «Единицы» (руб. / тыс. руб. / млн руб. / млрд руб.) и «Знаков после запятой» (0–3) — масштаб на строках без float, ноль — «—». - Новая спека `consolidations-ui` (ADDED Requirements), дельта `consolidated-osv-ui` (ADDED). - Чистые правила экранов — `web/src/utils/consolidations.ts`, масштаб сумм — `formatScaledAmount` в `web/src/utils/money.ts`, тесты vitest. - Документация фронта: `web/CLAUDE.md` (вторая библиотека иконок `lucide-react`), `web/ARCHITECTURE.md` (новые виджеты). ## Non-goals - Полный маршрут согласования (переходы Среза 7), «Добавить версию», «Отключить подтверждение КФО», «История изменений», «Редактировать состав», «Импорт», «Дата верификации», «Утверждён в РФ» / «Верифицирован в ГО» — зонтичная задача AURORA-1416. - ГСК консолидации в API списка и карточки (колонка «ГСК») — отдельная задача ядра; до неё колонка пустая. - Список допустимых переходов из API (`allowed_transitions`) — с маршрутом согласования; до него фронт держит зеркало. - Предупреждение браузера о несохранённых правках в формах вне экранов консолидаций (справочники, проверка документов) и при переходе по меню приложения — открытый вопрос владельцу (`design.md`, «Открытые вопросы»). - «Настройка таблицы», «На весь экран», фильтры по суммам в сводной ОСВ — задача «Сводная ОСВ: UI по макету». - Изменения бэкенда и DBML. ## Capabilities ### New Capabilities - `consolidations-ui`: список консолидаций ГК, взятие в работу и перехват, модалка новой консолидации (вид), смена статуса версии и шапка карточки версии. ### Modified Capabilities - `consolidated-osv-ui`: ADDED требование «Единицы и знаки после запятой» (коммит 71ef633 остаётся в PR, решение владельца 23.10.2026). `consolidation-setup` (состав модалки [42], создание, «К отчётности») не правится — вид модалки и шапка карточки описаны в новой спеке (`design.md`, решение без обсуждения (а)). ## Impact - `web/src/utils/consolidations.ts` (+ тест), `web/src/utils/money.ts` (`formatScaledAmount`, + тест), `web/src/hooks/useBeforeUnload.ts`, `web/src/widgets/ConsolidatedOsv/` (`OsvTabs.tsx` — модалка [31-00], `useNumberDisplay.tsx`, `OsvTable.tsx`), - `web/src/widgets/ConsoleTable/` (`ConsoleTable.tsx`, `LockModal.tsx`, `config.tsx`, `consts.ts`, `flatten.ts`), `web/src/widgets/StatusChangeModal/ChangeStatusModal.tsx`, `web/src/widgets/NewConsoleModal/` (`NewConsoleModal.tsx`, `CompanyOptionRow.tsx`), `web/src/widgets/ConsoleLegalEntities/`, `web/src/layouts/ConsolidationReportPage.tsx` (шапка, после влива #158), `web/src/widgets/ConsolidatedOsvContent/` («Единицы»), `web/src/layouts/ConsolidationsList.tsx`, `web/src/services/api/consolidations.ts`, `web/src/store/slices/consolidations/thunks.ts`, `web/src/types/`, `web/src/widgets/Sidebar/` (иконки), `web/package.json` (`lucide-react`). - Права: действия требуют `CONSOLIDATION_EDIT` на сервере; меню по правам не скрывается. - Гайд фронта по API (`docs/dev/frontend-api-guide.md` §5.7): заметка о зеркале ручных переходов — PR в RSHB/arm-ka-docs, сливать вместе с этим PR.