fix(settings): защищать восстановление базы от повторов и смены контекста
This commit is contained in:
1 parent
92b65a30ce
commit
57293479d1
13 files changed
+148
-188
No files matched your search
+3
-1
@@ -4,7 +4,7 @@
|
||||
|
||||
## Актуальная точка продолжения — 2026-10-03
|
||||
|
||||
Этап 11Б в работе; последний проверенный блок 11Б.3.6.2.2.2. Следующий блок 11Б.3.6.2.3: отдельная форма DB с source/active guards, синхронным lock и review неизвестного результата. Затем Alerts/Releases/probe scheduling, приёмка 11Б и этап 12.
|
||||
Этап 11Б в работе; последний проверенный блок 11Б.3.6.2.3.1. Следующий блок 11Б.3.6.2.3.2: browser source/ABA/unmount и соседняя Settings регрессия; затем локальная приёмка System DB. Затем Alerts/Releases/probe scheduling, приёмка 11Б и этап 12.
|
||||
|
||||
Реальные pg_dump/pg_restore, PG rollback и остановка UDP worker требуют внешней приёмки. Датированные продолжения ниже — история; точный следующий шаг также указан в начале [журнала](ux-ui-progress.md).
|
||||
|
||||
@@ -300,3 +300,5 @@ REST запрос → ожидание → подтверждённый output /
|
||||
Завершён 11Б.3.6.2.2.1: DI restore executor/--single-transaction/cleanup warning, file choose без фиктивного success, confirmation до receipt. 4 DI/3 API/2 browser tests, backend/frontend builds/typecheck/lint прошли; реальный PG restore не запускался. System DB не принят полностью. Следующий точный шаг 11Б.3.6.2.2.2 — backend core/restart/event partial outcomes + DI HTTP/JWT/concurrency; затем 11Б.3.6.2.3 source/lock/unknown UI.
|
||||
|
||||
2026-10-03: завершён 11Б.3.6.2.2.2, подтверждённый backup/restore отделён от restart/audit warnings; nonqueued concurrency, HTTP/JWT/API/UI проверки прошли локально. Далее DB форма 11Б.3.6.2.3.
|
||||
|
||||
2026-10-03: завершён 11Б.3.6.2.3.1, отдельная DB форма/lock/checkpoint/адаптивность; 10 E2E, API/proxy tests и build прошли. Далее source/ABA/unmount и приёмка DB.
|
||||
+10
-1
@@ -28,7 +28,7 @@
|
||||
| 9 | VPN, Firewall и Filters | Завершён в границах локальной приёмки 2026-09-30; блоки 9.1–9.64, ограничения в 9.64 |
|
||||
| 10 | Маршрутизация, диагностика, карта и терминал | Завершён в границах локальной приёмки 2026-10-01; блоки 10.1–10.71, внешние ограничения в 10.71 |
|
||||
| 11А | Пользователи, контейнеры, сертификаты и резервные копии | Завершён в границах локальной приёмки 2026-10-01; 11А.1–11А.33, внешние ограничения в 11А.33 |
|
||||
| 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | В работе: 11Б.1–11Б.3.6.2.2.2; scheduler и GeoIP приняты локально; NetFlow принят локально; Evolution принят локально; далее общие Settings |
|
||||
| 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | В работе: 11Б.1–11Б.3.6.2.3.1; scheduler и GeoIP приняты локально; NetFlow принят локально; Evolution принят локально; далее общие Settings |
|
||||
| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Не начат |
|
||||
|
||||
|
||||
@@ -36,6 +36,15 @@
|
||||
|
||||
|
||||
|
||||
## Блок 11Б.3.6.2.3.1 — отдельная форма базы и неизвестный результат (2026-10-03)
|
||||
|
||||
- Inline DB handlers вынесены в SystemDatabaseSection: source-keyed lifetime, AbortController/active guard, проверка settings admin и backend health, общий synchronous lock backup/restore, удержание confirmation и запрет cancel во время POST. Результат/ошибки/warnings показаны внутри формы; убраны дублирующие toast сообщения.
|
||||
- Dispatch checkpoint ставится только после проверки PGDMP/размера до отправки POST. Неизвестный результат блокирует повтор даже после cancel, смены секции и reload: memory + sessionStorage guard по источнику. Пользователь должен проверить данные/журнал и явно разрешить новый запрос; health не считается подтверждением восстановления. HTTP 401/403/409/413 — отказ без checkpoint; malformed receipt/ошибка транспорта сохраняют его. Нет автоматического повтора.
|
||||
- Старый ответ размонтированной формы не очищает checkpoint нового lifetime. Отмена reader не доказывает прекращение server restore. При недоступном sessionStorage guard сохраняется в памяти до reload; состояние выбранного файла после reload не восстанавливается, checkpoint остаётся при доступном storage.
|
||||
- 10 browser сценариев (включая 3 responsive и 2 прежних receipt), 5 API unit групп, lint/typecheck и production frontend/contracts build прошли. 3 снимка confirmation, 320 просмотрен. Первый прогон двух прежних E2E выявил duplicate toast/inline/closing dialog message; устранено, повтор прошёл.
|
||||
- Найдено, что same-origin Next proxy отбрасывал новый outcome header. Передача header исправлена; отдельный proxy test, lint/typecheck прошли после изменения. Остальные внутренние headers не передаются.
|
||||
- Следующий точный шаг 11Б.3.6.2.3.2: browser source/ABA/unmount и соседняя Settings регрессия; затем локальная приёмка System DB. Реальный PG dump/restore/worker pause/Portal ещё требуют внешней проверки.
|
||||
|
||||
## Блок 11Б.3.6.2.2.2 — подтверждённая операция и вторичные сбои (2026-10-03)
|
||||
|
||||
- Core backup/restore отделён от restart listener/scheduler: оба restart выполняются независимо, их errors — warnings после подтверждённой команды; первичная ошибка не подменяется вторичной. Ошибка stop предотвращает команду и запускает попытки восстановления потребителей. Cleanup warning сохранён.
|
||||
|
||||
@@ -226,3 +226,9 @@ ReUI PRO/base-nova; существующие Frame, Data Grid v9, KpiStatGrid, S
|
||||
Завершён 11Б.3.6.2.2.1: DI restore executor/--single-transaction/cleanup warning, file choose без фиктивного success, confirmation до receipt. 4 DI/3 API/2 browser tests, backend/frontend builds/typecheck/lint прошли; реальный PG restore не запускался. System DB не принят полностью. Следующий точный шаг 11Б.3.6.2.2.2 — backend core/restart/event partial outcomes + DI HTTP/JWT/concurrency; затем 11Б.3.6.2.3 source/lock/unknown UI.
|
||||
|
||||
Завершён 11Б.3.6.2.2.2: core/restart/event outcomes, nonqueued lock/409, DI HTTP/JWT/concurrency/API и browser checks прошли; реальная БД не запускалась. Далее 11Б.3.6.2.3 — отдельная DB форма с source/active/admin/sync lock/unknown review.
|
||||
|
||||
Завершён 11Б.3.6.2.3.1: DB form/rights/source lifetime/sync lock/persisted unknown review; 10 E2E/5 API/proxy unit/typecheck/lint/build прошли. 3 confirmation screenshots, 320 просмотрен. Далее 11Б.3.6.2.3.2 source/ABA/unmount и Settings регрессия.
|
||||
|
||||
| Блок | Референс | Схема |
|
||||
| --- | --- | --- |
|
||||
| 11Б.3.6.2.3.1 База приложения | [Settings 16](https://reui.io/preview/base/settings-16?ref=mcp) | Источник и доступ → скачать / выбрать файл → подтверждение → результат + warnings; неизвестный результат → проверка данных → разрешение нового запроса |
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 231 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 84 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 93 KiB |
Reference in new issue
Block a user