chore(docs): сохранить карту реализации администрирования

This commit is contained in:
Denozordec committed 2026-10-01 09:33:40 +07:00
1 parent 517e0bca67
commit 0a332ce341
3 files changed
+52 -1

No files matched your search

+2
View File
@@ -214,3 +214,5 @@ REST запрос → ожидание → подтверждённый output /
## Актуальное продолжение 2026-10-01
Этап 10 принят локально (10.71): 235 основных + 52 source E2E, 42 unit, frontend/backend build. Реальный RouterOS/Portal/PostgreSQL остаётся внешней приёмкой. Далее 11А — пользователи, контейнеры, сертификаты, резервирование; затем 11Б и 12. История прежних контрольных точек выше не заменяет актуальный журнал.
Карта этапа 11А: [API, референсы и схемы](ux-ui-stage-11a.md). Точный следующий блок и ограничения — журнал.
+8 -1
View File
@@ -27,7 +27,7 @@
| 8 | Трафик и статистика | Завершён 2026-09-28 в границах локальной приёмки; ограничения в блоке 8.13 |
| 9 | VPN, Firewall и Filters | Завершён в границах локальной приёмки 2026-09-30; блоки 9.1–9.64, ограничения в 9.64 |
| 10 | Маршрутизация, диагностика, карта и терминал | Завершён в границах локальной приёмки 2026-10-01; блоки 10.1–10.71, внешние ограничения в 10.71 |
| 11А | Пользователи, контейнеры, сертификаты и резервные копии | Не начат |
| 11А | Пользователи, контейнеры, сертификаты и резервные копии | В работе: 11А.1; карта API и сценариев сохранена |
| 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | Не начат |
| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Не начат |
@@ -36,6 +36,13 @@
## Блок 11А.1 — подготовка администрирования (2026-10-01)
- Сохранён docs/ux-ui-stage-11a.md: референсы, схема, порядок пользователей/контейнеров/сертификатов/backup, API и точки завершения. Чтение и многошаговые операции пользователей разделены на проверяемые блоки.
- Зафиксированы live INIT_USERS, связанный Promise.all, проглоченная refresh ошибка, отсутствие lock удаления и сброс формы эффектом. У контейнеров отказ очищает снимок; backup объединяет четыре зависимости и требует аудита polling job/интеграций.
- Различаются профильные права и JWT приложения; атомарность нескольких HTTP запросов не обещается. Расписание/оповещения/настройки — 11Б, реальные устройства/Portal/БД/S3 — внешняя приёмка.
- Проверка: исходные страницы/API/contracts прочитаны, карта сверена с сохранённым планом. Далее 11А.2: загрузка пользователей, независимые состояния каталога серверов, источник/права и API E2E.
## Блок 10.71 — локальная приёмка этапа 10 (2026-10-01)
- Этап 10 завершён в границах локальной приёмки: BGP/OSPF/рекурсивные маршруты/оптимизатор/карта/терминал/диагностика. Схемы и снимки сохранены в плане; ReUI Frame/Data Grid v9 и base-nova сохранены, новые vendor компоненты не добавлены.
+42
View File
@@ -0,0 +1,42 @@
# Этап 11А: пользователи и администрирование устройств
Статус: подготовка 2026-10-01. ReUI PRO/base-nova, существующие Frame, KpiStatGrid, Data Grid v9 и Sheet. Изменения последовательно, локальные коммиты без push.
## Референсы и схемы
| Область | Референс | Схема |
| --- | --- | --- |
| Обзор раздела | [Settings 16](https://reui.io/preview/base/settings-16?ref=mcp) / [Stats 12](https://reui.io/preview/base/stats-12?ref=mcp) | Источник → подтверждённая сводка → проблемы → действие |
| Таблицы | [Data Grid Filtering 2](https://reui.io/preview/base/data-grid-filtering-2?ref=mcp) | Фильтры → объект → детали → результат API |
| Формы | [Sheet 8](https://reui.io/preview/base/sheet-8?ref=mcp) | Контекст → форма → проверка → подтверждённый результат / сохранённый черновик |
[Источник и права]
↓
[Каталоги + свежесть] → [Ошибка: последние данные, явный повтор]
↓
[Объект / детали] → [Форма с черновиком]
↓
[Подтверждение API / частичное выполнение]
↓
[Повторное чтение / восстановление контекста]
## Карта реализации
| Порядок | Раздел / API | Исходная проблема | Точка завершения |
| --- | --- | --- | --- |
| 1 | Пользователи: /users, /servers | Live начинает с INIT_USERS; Promise.all связывает независимые отказы; нет свежести и защиты смены источника | Пустой/unknown/ошибка различаются, последний снимок и read-only права |
| 2 | Профиль и привязки: /users/:id, /bindings | Многошаговое сохранение, нет lock удаления, refresh ошибка проглатывается; Sheet эффект может сбросить форму | Частичное выполнение явно показано, повтор без дублей, успешный API отдельно от refresh |
| 3 | Interface catalog | Ошибка превращается в []; каталог может сохранять прежнее устройство; peer ошибки требуют проверки | Контекст и доступность, точный выбор, сохранение формы |
| 4 | Пользователи UI | «Пригласить» фактически создаёт профиль; icon actions без имён, raw colors, доступность формы | ПК/390/320, клавиатура, понятные подписи/токены |
| 5 | Контейнеры | Отказ очищает прошлые объекты, Promise.all и операции требуют защиты/валидации | Состояния снимка, реальные подтверждения действий, контекст/права |
| 6 | Сертификаты | Сводка, доступность экспорта/операций и конкретный сервер требуют аудита | Неизвестные статусы, действительный экспорт и ошибки API |
| 7 | Резервирование | Общий Promise.all четырёх источников, polling задач/интеграций и сохранение требуют аудита | Частичные сбои и состояние job без ложного завершения, форма сохранена |
| 8 | Приёмка 11А | Сквозные действия и общие компоненты | Профильная регрессия, production build, снимки, внешние ограничения |
## Границы
- Права пользователя в профиле и Portal JWT авторизация приложения — разные существующие контракты; не менять правила выдачи доступа в UX исправлениях.
- Сохранение профиля и привязок сейчас несколько HTTP запросов. Не обещать атомарность и не повторять подтверждённое создание после частичного отказа.
- Серверный каталог — зависимость формы прав/привязок; отсутствие доступа или отказ не должен обнулять сохранённые разрешения.
- Backend/моки не подтверждают реальный Portal, PostgreSQL, RouterOS, выдачу сертификатов, восстановление backup или доступность S3. Реальную приёмку перечислять отдельно.
- Оповещения, сбор данных, интеграции, релизы, настройки и расписание диагностики — 11Б.