fix(netflow): проверять ответы аналитики и выбранный месяц

This commit is contained in:
Denozordec committed 2026-10-11 17:58:18 +07:00
1 parent 979dc3cfb0
commit 64df472202
10 files changed
+271 -16

No files matched your search

@@ -0,0 +1,47 @@
{
"date": "2026-10-11",
"block": "12.5.147",
"runtime": {
"backend": "ux-labels146",
"frontend": "ux-http147"
},
"checks": {
"e2eAcceptedAcrossAttempts": 34,
"sourceOnlyTypesPassed": true,
"eslintPassed": true,
"frontendProductionBuildPassed": true,
"liveContracts": [
{
"path": "/api/traffic/flow/analytics?range=5m&serverId=1",
"status": 200,
"schemaPassed": true,
"month": null
},
{
"path": "/api/traffic/flow/monthly?month=2026-10&serverId=1",
"status": 200,
"schemaPassed": true,
"month": "2026-10"
}
]
},
"initial": {
"passed": 31,
"failed": 3,
"reasons": [
"Strict optional overlay/wire rejection hid valid core data; corrected to preserve partial unknown metrics without zero substitution",
"Two monthly fixtures had empty server catalog, so no actual monthly selection/request; fixed catalog to existing supported server shape"
]
},
"retry": {
"onlyFailedCasesRepeated": true,
"passed": 3
},
"bounds": [
"Existing authoritative schemas and error/retry UI reused; required HTTP analytics/monthly data validated before rendering",
"Negative RX/TX series rejected consistently with SSE; incomplete payload does not crash page or create false zero counters",
"Invalid optional overlay/wire numeric measurements become undefined/Нет данных; valid core and legitimate zero measurements retained",
"Response month must equal requested month; retry preserves server/range/month filters",
"No backend/schema/device/password change; real contract smoke reads current empty/history lab data, not newly populated WAN flow acceptance"
]
}
@@ -0,0 +1,84 @@
{
"date": "2026-10-11",
"block": "12.5.147",
"runtime": {
"backend": "ux-labels146",
"frontend": "ux-http147"
},
"checks": {
"readOnlyFrontendUnchanged": true,
"backendHealthy": true,
"backendProductionBuildPassed": true
},
"cases": [
{
"width": 1440,
"httpStatus": 200,
"api": [
{
"path": "/api/traffic/bound-interfaces",
"status": 200
},
{
"path": "/api/traffic/users",
"status": 200
},
{
"path": "/api/traffic/servers",
"status": 200
},
{
"path": "/api/traffic/servers/1/live",
"status": 200
},
{
"path": "/api/traffic/servers/1/interfaces",
"status": 200
},
{
"path": "/api/traffic/servers/1",
"status": 200
}
],
"pageErrors": [],
"noOverflow": true
},
{
"width": 320,
"httpStatus": 200,
"api": [
{
"path": "/api/traffic/servers",
"status": 200
},
{
"path": "/api/traffic/bound-interfaces",
"status": 200
},
{
"path": "/api/traffic/users",
"status": 200
},
{
"path": "/api/traffic/servers/1/live",
"status": 200
},
{
"path": "/api/traffic/servers/1/interfaces",
"status": 200
},
{
"path": "/api/traffic/servers/1",
"status": 200
}
],
"pageErrors": [],
"noOverflow": true
}
],
"bounds": [
"Read-only initial loading with real current lab catalog; no full NetFlow ingestion or throughput claim",
"Catalog failure and pending loading checked by controlled E2E; numeric live server details/interfaces/SSE enabled only after confirmed catalog ownership",
"Interface filter remains selected on range changes; backend source switch invalidates prior catalog ownership"
]
}