diff --git a/vehicle-data-platform/apps/web/src/pages/Quality.tsx b/vehicle-data-platform/apps/web/src/pages/Quality.tsx index 26265e38..4b0e12db 100644 --- a/vehicle-data-platform/apps/web/src/pages/Quality.tsx +++ b/vehicle-data-platform/apps/web/src/pages/Quality.tsx @@ -640,10 +640,11 @@ export function Quality({ ))} - {formatLag(health?.kafkaLag)} - {formatLag(health?.activeConnections)} - {formatLag(health?.redisOnlineKeys)} - + {formatLag(health?.kafkaLag)} + {formatLag(health?.activeConnections)} + {formatLag(health?.redisOnlineKeys)} + {health?.runtime?.platformRelease || '未标记'} + {storageReadStatus(health) === 'pending' ? '检测中' : storageReadStatus(health) === 'ok' ? '正常' : '异常'} diff --git a/vehicle-data-platform/apps/web/src/test/App.test.tsx b/vehicle-data-platform/apps/web/src/test/App.test.tsx index e7735a3a..0d634014 100644 --- a/vehicle-data-platform/apps/web/src/test/App.test.tsx +++ b/vehicle-data-platform/apps/web/src/test/App.test.tsx @@ -8998,7 +8998,7 @@ test('quality health shows active connection capacity metric', async () => { ok: true, json: async () => ({ data: path.includes('/api/ops/health') - ? { linkHealth: [], kafkaLag: 0, activeConnections: 120000, redisOnlineKeys: 368, tdengineWritable: true, mysqlWritable: true, runtime: { requestTimeoutMs: 5000 } } + ? { linkHealth: [], kafkaLag: 0, activeConnections: 120000, redisOnlineKeys: 368, tdengineWritable: true, mysqlWritable: true, runtime: { requestTimeoutMs: 5000, platformRelease: 'platform-20260704153710' } } : path.includes('/api/quality/summary') ? { issueVehicleCount: 0, issueRecordCount: 0, errorCount: 0, warningCount: 0, protocols: [], issueTypes: [] } : { items: [], total: 0, limit: 20, offset: 0 }, @@ -9013,6 +9013,8 @@ test('quality health shows active connection capacity metric', async () => { expect(await screen.findByRole('heading', { name: '告警通知' })).toBeInTheDocument(); expect(await screen.findByText('活跃连接')).toBeInTheDocument(); expect(screen.getByText('120,000')).toBeInTheDocument(); + expect(screen.getByText('运行版本')).toBeInTheDocument(); + expect(screen.getByText('platform-20260704153710')).toBeInTheDocument(); }); test('quality health shows structured capacity findings', async () => {