fix(traffic): прекращать опрос изменённого источника
This commit is contained in:
1 parent
5d19b6a258
commit
504f62fc0b
15 files changed
+1296
-14
No files matched your search
@@ -1,8 +1,8 @@
|
||||
# Оставшаяся внешняя приёмка — 2026-10-12
|
||||
|
||||
Это актуальная матрица после 12.5.188. Исторические записи сохраняют версии и ограничения на момент выполнения; поздние проверки ниже уточняют их. Этап 12.5 открыт. Успех в двух CHR и одном backend не означает приёмку всех конфигураций, интеграций или полной регрессии.
|
||||
Это актуальная матрица после 12.5.189. Исторические записи сохраняют версии и ограничения на момент выполнения; поздние проверки ниже уточняют их. Этап 12.5 открыт. Успех в двух CHR и одном backend не означает приёмку всех конфигураций, интеграций или полной регрессии.
|
||||
|
||||
Стенд: Debian13/Compose, PostgreSQL18.6, два CHR RouterOS7.24.5. Backend `ux-membership188`, frontend `ux-warning183`; production lab использует AUTH_REQUIRED=false. Подписанные JWT/RBAC проверялись в изолированных процессах. Все собственные объекты112 удалены, исходные13 коллекций×2 (включая logging/certificates/files/routes) проверены; пароли не менялись.
|
||||
Стенд: Debian13/Compose, PostgreSQL18.6, два CHR RouterOS7.24.5. Backend `ux-sourceguard189`, frontend `ux-warning183`; production lab использует AUTH_REQUIRED=false. Подписанные JWT/RBAC проверялись в изолированных процессах. Все собственные объекты112 удалены, исходные13 коллекций×2 (включая logging/certificates/files/routes) проверены; пароли не менялись.
|
||||
|
||||
| Раздел | Подтверждено | Осталось / условие завершения |
|
||||
| --- | --- | --- |
|
||||
@@ -1172,3 +1172,18 @@ Unit membership deletion/addition/baseline/zero/history и backend build passed.
|
||||
[Source460/524](ux-ui/acceptance/traffic-wave-source-2026-10-13.json)/[compiled1040](ux-ui/acceptance/traffic-wave-compiled-2026-10-13.json) SHA256 parity; [backend ux-membership188](ux-ui/acceptance/traffic-wave-runtime-2026-10-13.json) healthy/imageIds, frontend ux-warning183 unchanged/no rebuild. Only backend.env tag, rollback ux-identity186, migration0/secret env copy0. [Actual API](ux-ui/acceptance/traffic-wave-api-2026-10-13.json)/[browser1440/320](ux-ui/acceptance/traffic-wave-deployed-2026-10-13.json) current/live/receipt/no errors/overflow passed. Реальные interfaces/пароли не менялись, messages0; rename/delete проверены собственным SQL dataset, не выданы за native VPN tunnel test.
|
||||
|
||||
Следующий189 — collector после отключения/смены источника между /interface и optional peer request: source.enabled/updatedAt должны проверяться перед каждой следующей командой и перед публикацией успешной записи. Live SSE уже проверяет каждую команду179. Затем проверить temporal peaks/частичные bins отдельно; этот блок не принимает sum-of-individual-peaks за общий одновременный пик.12.5 открыта. Локальный коммит без push.
|
||||
|
||||
## 12.5.189 — прекращение фонового опроса при изменении источника (2026-10-13)
|
||||
|
||||
Collector теперь повторно читает enabled/updatedAt по ID перед /interface, после его ответа до cache, перед /wireguard/peers, перед INSERT samples и перед успешной receipt. Выключенный/удалённый/изменённый источник прекращает цикл с явной причиной. Форма source check одинакова для всех типов серверов, Home exception отсутствует. Уже отправленный native request невозможно отменить задним числом; guard препятствует следующему request и публикации известного устаревшего результата. Межпроцессная атомарность source edit/native call/DB commit не заявляется.
|
||||
|
||||
[Owned PG SQL](ux-ui/acceptance/traffic-sourceguard-sql-2026-10-13.json):67 cases9counter+14history+10TCP SSE+13volume+21status/39536ms, no skip.2 новые cases обновляют own server.enabled/config внутри первого loopback HTTP handler до его ответа: snapshot.ok=false, peer request count не растёт, samples count не меняется. Сервер re-enabled только в own fixture для следующего case. Actual-collector VM граница стала поддерживать limit() read, unit и backend build passed. OwnDB mm_accept_166_1791831842508/role/container удалены, absence verified.
|
||||
|
||||
| Событие | Схема |
|
||||
| --- | --- |
|
||||
| Source выключен/config changed во время first request | завершение in-flight read → guard → no peer request/cache/new rows/ok receipt |
|
||||
| Source неизменён | read → verify → validated rows → verify before publication |
|
||||
|
||||
[Source460/524](ux-ui/acceptance/traffic-sourceguard-source-2026-10-13.json)/[compiled1040](ux-ui/acceptance/traffic-sourceguard-compiled-2026-10-13.json) SHA256 parity passed. [Backend ux-sourceguard189](ux-ui/acceptance/traffic-sourceguard-runtime-2026-10-13.json) healthy/imageIds, frontend ux-warning183 unchanged. Only backend.env tag, rollback ux-membership188; migration0/secret env copy0. [Actual API](ux-ui/acceptance/traffic-sourceguard-api-2026-10-13.json)/[browser1440/320](ux-ui/acceptance/traffic-sourceguard-deployed-2026-10-13.json) passed current/live/receipt/no errors/overflow. Real CHR не отключались/не перенастраивались; passwords/messages changes0.
|
||||
|
||||
Следующий190 — пик не должен вычисляться из partial/unconfirmed aggregate wave. Разные времена индивидуальных пиков user bindings также требуют отдельной temporal aggregation, а сумма индивидуальных максимумов не является общим одновременным максимумом.12.5 и внешние dependencies остаются открыты. Локальный коммит без push.
|
||||
Reference in new issue
Block a user