fix(alerts): проверять правила и группы до замены конфигурации
This commit is contained in:
1 parent
3556a378f2
commit
6093442bcf
10 files changed
+61
-10
No files matched your search
+3
-1
@@ -4,7 +4,7 @@
|
||||
|
||||
## Актуальная точка продолжения — 2026-10-03
|
||||
|
||||
Этап 11Б в работе; последний проверенный блок 11Б.4.2.1.2; System DB принят локально с внешними ограничениями. Следующий блок 11Б.4.2.2.1: rules/groups normalization и transactional receipt/DI без readback после commit; затем Alerts UI. Затем Alerts/Releases/probe scheduling, приёмка 11Б и этап 12.
|
||||
Этап 11Б в работе; последний проверенный блок 11Б.4.2.2.1.1; System DB принят локально с внешними ограничениями. Следующий блок 11Б.4.2.2.1.2: transactional rules/groups receipt/readback, DI failure/rollback/concurrency; затем Alerts UI и outbox unknown audit. Затем Alerts/Releases/probe scheduling, приёмка 11Б и этап 12.
|
||||
|
||||
Реальные pg_dump/pg_restore, PG rollback и остановка UDP worker требуют внешней приёмки. Датированные продолжения ниже — история; точный следующий шаг также указан в начале [журнала](ux-ui-progress.md).
|
||||
|
||||
@@ -310,3 +310,5 @@ REST запрос → ожидание → подтверждённый output /
|
||||
2026-10-03: 11Б.4.2.1.1 — selective Telegram UPDATE RETURNING, strict send receipt; 7 DI/send tests/build/lint прошли. confirm-stability пропущен без PG. Далее HTTP/JWT 11Б.4.2.1.2.
|
||||
|
||||
2026-10-03: 11Б.4.2.1.2 — реальные Alerts HTTP/JWT gates и один Telegram stored snapshot, профильные tests/build/typecheck/lint прошли. Далее rules/groups 11Б.4.2.2.1.
|
||||
|
||||
2026-10-03: 11Б.4.2.2.1.1 — общая нормализация rules/groups и 400 до удаления; 8 unit и backend profile/builds/typecheck/lint прошли. Далее transaction receipt 11Б.4.2.2.1.2.
|
||||
@@ -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Б.4.2.1.2; scheduler и GeoIP приняты локально; NetFlow принят локально; Evolution принят локально; далее общие Settings |
|
||||
| 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | В работе: 11Б.1–11Б.4.2.2.1.1; scheduler и GeoIP приняты локально; NetFlow принят локально; Evolution принят локально; далее общие Settings |
|
||||
| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Не начат |
|
||||
|
||||
|
||||
@@ -36,6 +36,13 @@
|
||||
|
||||
|
||||
|
||||
## Блок 11Б.4.2.2.1.1 — общая нормализация правил и групп (2026-10-03)
|
||||
|
||||
- normalizeAlertsConfig общий для client и backend до transaction/delete. Сохраняет порядок OR targets/conditions, legacy одиночные поля, прежние summary labels, cooldown/recovery/combine policy; 0 delay означает off/null. Known empty groups отличается от omitted groups. Дубликаты ID, неизвестная группа и whitespace-only объекты/условия отклоняются до записи; HTTP возвращает 400.
|
||||
- 3 normalization + 5 API unit групп прошли; backend service/HTTP/JWT profile, contracts/backend builds/typecheck/lint прошли. Normalization test включён в test:alerts-telegram. Реальные PG/Telegram не вызывались.
|
||||
- Это подготовка transactional receipt, а не его приёмка: router всё ещё читает groups/rules отдельно после commit; при omitted groups предварительное чтение также вне transaction. Нет доказательства optimistic concurrency/защиты от overwrite несколькими клиентами. UI прежний.
|
||||
- Следующий точный шаг 11Б.4.2.2.1.2: transaction возвращает подтверждённый снимок rules/groups; readback/last-fired внутри одного context, failure/rollback/no retry DI, сериализация replace. Затем Alerts UI, outbox unknown policy audit и остальные части 11Б/12.
|
||||
|
||||
## Блок 11Б.4.2.1.2 — реальные Alerts HTTP/JWT и источник теста Telegram (2026-10-03)
|
||||
|
||||
- Router вынесен в DI factory, production зависимости сохранены. Test Telegram читает один stored row token/chat/thread и передаёт resolved значения напрямую send helper; повторных DB rereads/fallback при отправке нет. Числовой thread строго int4, boolean/string/дробь/overflow отклоняются до reader/send. PUT Telegram проверяет public receipt перед ok.
|
||||
|
||||
@@ -240,3 +240,5 @@ ReUI PRO/base-nova; существующие Frame, Data Grid v9, KpiStatGrid, S
|
||||
Завершён 11Б.4.2.1.1: selective Telegram UPDATE RETURNING/partial concurrent patches, singleton conflict-safe и strict bounded send receipt; 7 tests/build/lint прошли. Groups/evaluate regression прошла, confirm-stability skip без PG. Далее 11Б.4.2.1.2 — Alerts real HTTP/JWT/save/test и согласованный источник; UI прежний.
|
||||
|
||||
Завершён 11Б.4.2.1.2: Alerts HTTP/JWT read/write gates и один Telegram snapshot; профильные tests/build/typecheck/lint прошли. Далее 11Б.4.2.2.1 rules/groups normalization/transactional receipt, затем UI.
|
||||
|
||||
Завершён 11Б.4.2.2.1.1: shared rules/groups normalization до delete, 8 unit/HTTP/JWT/builds/typecheck/lint прошли. Router readback остаётся после commit; omitted groups read вне transaction. Далее 11Б.4.2.2.1.2 transactional receipt/context/DI/concurrency; затем UI/outbox.
|
||||
Reference in new issue
Block a user