217 lines
8.7 KiB
JSON
217 lines
8.7 KiB
JSON
{
|
|
"date": "2026-10-11",
|
|
"block": "12.5.140",
|
|
"runtime": {
|
|
"backend": "ux-ripe140",
|
|
"frontend": "ux-log133",
|
|
"backendHealthy": true,
|
|
"postgresHealthy": true,
|
|
"frontendRunning": true
|
|
},
|
|
"checks": {
|
|
"localTrafficFlowSeriesExit": 0,
|
|
"localPostgresSkipped": true,
|
|
"localRipeTestPassed": true,
|
|
"ipv4BoundaryTestsPassed": true,
|
|
"eslintChangedFilesPassed": true,
|
|
"backendProductionBuildPassed": true,
|
|
"isolatedSqlUniqueModulesPassed": [
|
|
"traffic-flow-ingest",
|
|
"traffic-flow-analytics",
|
|
"traffic-flow-map-hops",
|
|
"traffic-flow-purge",
|
|
"traffic-flow-facts-rebuild",
|
|
"statistics-aggregate"
|
|
],
|
|
"temporaryDatabasesRemoved": 4,
|
|
"compiledBackendOutputsMatched": 984,
|
|
"compiledMissing": 0,
|
|
"compiledDifferent": 0
|
|
},
|
|
"hashes": {
|
|
"ipServiceSource": "b164a6e50e61d235855c0888e3f178162fbb46affbef5cc534189401d7d14865",
|
|
"compiledIpService": "583b1ec8ee3f05d2a0a4e72ccd358cc3ecffd006aa4332dbdc72f63903dbbfd6",
|
|
"sourceAndRuntimeMatched": true
|
|
},
|
|
"sqlAttempts": [
|
|
{
|
|
"date": "2026-10-11",
|
|
"name": "mm_accept_140_1791697211345",
|
|
"tests": [
|
|
{
|
|
"module": "traffic-flow-ingest",
|
|
"passed": true,
|
|
"output": "traffic-flow-ingest.test.ts: ok\nISOLATED_SQL_TEST_COMPLETE\n"
|
|
},
|
|
{
|
|
"module": "traffic-flow-analytics",
|
|
"passed": false,
|
|
"error": "Command failed: /usr/local/bin/node /app/backend/acceptance/pg140-runner.mjs /app/backend/acceptance/pg140-tests/traffic-flow-analytics.mjs\nSQLite → PostgreSQL: файл /tmp/mm_accept_140_1791697211345/empty.db не найден, база после wipe остаётся пустой (defaults settings)\ninsert or update on table \"flow_daily_dims_m_202609\" violates foreign key constraint \"flow_daily_dims_server_id_fkey\"\n",
|
|
"output": "",
|
|
"stderr": "SQLite → PostgreSQL: файл /tmp/mm_accept_140_1791697211345/empty.db не найден, база после wipe остаётся пустой (defaults settings)\ninsert or update on table \"flow_daily_dims_m_202609\" violates foreign key constraint \"flow_daily_dims_server_id_fkey\"\n"
|
|
}
|
|
],
|
|
"databaseRemoved": true
|
|
},
|
|
{
|
|
"date": "2026-10-11",
|
|
"name": "mm_accept_140_1791697661858",
|
|
"tests": [
|
|
{
|
|
"module": "traffic-flow-ingest",
|
|
"passed": true,
|
|
"output": "traffic-flow-ingest.test.ts: ok\nISOLATED_SQL_TEST_COMPLETE\n"
|
|
},
|
|
{
|
|
"module": "traffic-flow-analytics",
|
|
"passed": true,
|
|
"output": "traffic-flow-analytics.test.ts: ok\nISOLATED_SQL_TEST_COMPLETE\n"
|
|
},
|
|
{
|
|
"module": "traffic-flow-map-hops",
|
|
"passed": false,
|
|
"error": "Command failed: /usr/local/bin/node /app/backend/acceptance/pg140-runner.mjs /app/backend/acceptance/pg140-tests/traffic-flow-map-hops.mjs\nSQLite → PostgreSQL: файл /tmp/mm_accept_140_1791697661858/empty.db не найден, база после wipe остаётся пустой (defaults settings)\nтоп-8 брендов на карте\n\n2 !== 8\n\n",
|
|
"output": "traffic-flow-map-hops.test.ts: pickMapServices ok\ntraffic-flow-map-hops.test.ts: hops ok\n",
|
|
"stderr": "SQLite → PostgreSQL: файл /tmp/mm_accept_140_1791697661858/empty.db не найден, база после wipe остаётся пустой (defaults settings)\nтоп-8 брендов на карте\n\n2 !== 8\n\n"
|
|
}
|
|
],
|
|
"databaseRemoved": true
|
|
},
|
|
{
|
|
"date": "2026-10-11",
|
|
"name": "mm_accept_140_1791697879954",
|
|
"tests": [
|
|
{
|
|
"module": "traffic-flow-map-hops",
|
|
"passed": true,
|
|
"output": "traffic-flow-map-hops.test.ts: pickMapServices ok\ntraffic-flow-map-hops.test.ts: hops ok\ntraffic-flow-map-hops.test.ts: ok\nISOLATED_SQL_TEST_COMPLETE\n"
|
|
},
|
|
{
|
|
"module": "traffic-flow-purge",
|
|
"passed": true,
|
|
"output": "traffic-flow-purge.test.ts: ok\nISOLATED_SQL_TEST_COMPLETE\n"
|
|
},
|
|
{
|
|
"module": "traffic-flow-facts-rebuild",
|
|
"passed": true,
|
|
"output": "traffic-flow-facts-rebuild.test.ts: ok\nISOLATED_SQL_TEST_COMPLETE\n"
|
|
},
|
|
{
|
|
"module": "statistics-aggregate",
|
|
"passed": false,
|
|
"error": "Command failed: /usr/local/bin/node /app/backend/acceptance/pg140-runner.mjs /app/backend/acceptance/pg140-tests/statistics-aggregate.mjs\nSQLite → PostgreSQL: файл /tmp/mm_accept_140_1791697879954/empty.db не найден, база после wipe остаётся пустой (defaults settings)\nno partition of relation \"server_snapshots\" found for row\n",
|
|
"output": "",
|
|
"stderr": "SQLite → PostgreSQL: файл /tmp/mm_accept_140_1791697879954/empty.db не найден, база после wipe остаётся пустой (defaults settings)\nno partition of relation \"server_snapshots\" found for row\n"
|
|
}
|
|
],
|
|
"databaseRemoved": true
|
|
},
|
|
{
|
|
"date": "2026-10-11",
|
|
"name": "mm_accept_140_1791698055809",
|
|
"tests": [
|
|
{
|
|
"module": "statistics-aggregate",
|
|
"passed": true,
|
|
"output": "statistics-aggregate.test.ts: ok\nISOLATED_SQL_TEST_COMPLETE\n"
|
|
}
|
|
],
|
|
"databaseRemoved": true
|
|
}
|
|
],
|
|
"liveRipe": {
|
|
"date": "2026-10-11",
|
|
"runtime": "ux-ripe140",
|
|
"requests": [
|
|
{
|
|
"path": "/data/network-info/data.json",
|
|
"resource": "104.165.244.7",
|
|
"status": 200
|
|
},
|
|
{
|
|
"path": "/data/network-info/data.json",
|
|
"resource": "194.226.121.150",
|
|
"status": 200
|
|
},
|
|
{
|
|
"path": "/data/maxmind-geo-lite/data.json",
|
|
"resource": "194.226.121.0/24",
|
|
"status": 200
|
|
},
|
|
{
|
|
"path": "/data/maxmind-geo-lite/data.json",
|
|
"resource": "104.165.244.0/24",
|
|
"status": 200
|
|
},
|
|
{
|
|
"path": "/data/as-overview/data.json",
|
|
"resource": "AS41745",
|
|
"status": 200
|
|
},
|
|
{
|
|
"path": "/data/as-overview/data.json",
|
|
"resource": "AS41745",
|
|
"status": 200
|
|
}
|
|
],
|
|
"cases": [
|
|
{
|
|
"ip": "194.226.121.150",
|
|
"prefix": "194.226.121.0/24",
|
|
"asn": 41745,
|
|
"country": "RU",
|
|
"lat": 55.7487,
|
|
"lng": 37.6187,
|
|
"holder": "FORTIS-AS Baykov Ilya Sergeevich",
|
|
"ok": true,
|
|
"fetchedAt": 1791697689859
|
|
},
|
|
{
|
|
"ip": "104.165.244.7",
|
|
"prefix": "104.165.244.0/24",
|
|
"asn": 41745,
|
|
"country": "PL",
|
|
"lat": 52.2299,
|
|
"lng": 21.0093,
|
|
"holder": "FORTIS-AS Baykov Ilya Sergeevich",
|
|
"ok": true,
|
|
"fetchedAt": 1791697689949
|
|
}
|
|
],
|
|
"cacheHitsNoFetch": true,
|
|
"success": true
|
|
},
|
|
"browserSmoke": {
|
|
"protocol": "browser-flow-special-ip-2026-10-11.json",
|
|
"pageRenderingAndNoOverflowPassed": true,
|
|
"apiFailures": [
|
|
{
|
|
"path": "/api/traffic/servers/srv1",
|
|
"status": 400,
|
|
"error": "id is required"
|
|
},
|
|
{
|
|
"path": "/api/traffic/servers/srv1/interfaces",
|
|
"status": 400,
|
|
"error": "id is required"
|
|
}
|
|
],
|
|
"nextFix": "Gate live traffic fetches until confirmed numeric server id/catalog"
|
|
},
|
|
"bounds": [
|
|
"IPv4 eligible-public predicate updated using IANA non-global special ranges; PCP/TURN192.0.0.9/10 remain eligible; global reachability not guaranteed by eligibility",
|
|
"Fixed ranges parsed once for hot flow paths; no IPFIX tuple/NAT/network config/DB schema change",
|
|
"Stale seeded public metadata for special IPv4 bypassed; special IPv4/private/cache-hit enqueue produces no RIPE requests",
|
|
"Initial SQL failures retained: hardcoded server7/missing FK fixture; documentation IPs used as public service fixtures; missing historical snapshot partition",
|
|
"Test fixtures fixed without weakening data/assertions: owned server+scoped cleanup, eligible synthetic public IPs, partition for fixed test date",
|
|
"Six unique DB modules accepted across bounded runs, not six fresh successes in one run; local skips not counted as passes",
|
|
"Own temporary databases created/dropped with owner/prefix checks; child current_database checked before tests; working DB/legacy SQLite untouched",
|
|
"All984 production outputs match candidate and actual deployed IP service hash; no frontend rebuild because frontend source unchanged",
|
|
"Read-only UI smoke has no page errors/overflow but two existing initial mock-id400 requests; not a fully green API loading acceptance",
|
|
"IPv6 special registry handling and the traffic initial live-id gate remain separate work"
|
|
],
|
|
"references": [
|
|
"https://www.iana.org/assignments/iana-ipv4-special-registry/"
|
|
]
|
|
}
|