fix(web): keep evidence visible when quality fails
All checks were successful
CD Pipeline / tests (push) Successful in 4m56s
Code Review / ai-code-review (push) Successful in 11s
CD Pipeline / build-and-deploy (push) Successful in 3m57s
CD Pipeline / post-deploy-checks (push) Successful in 1m46s

This commit is contained in:
Your Name
2026-05-24 13:18:57 +08:00
parent 05dd8450a8
commit df922e8c67

View File

@@ -264,18 +264,30 @@ export function AutomationEvidenceCard() {
}))
setLoading(false)
const quality = await fetchJson<AutomationQualitySummary>(
'/api/v1/platform/truth-chain/quality/summary?project_id=awoooi&hours=24&limit=200',
controller.signal
)
if (!controller.signal.aborted) {
setSnapshot((current) => ({
quality: quality ?? current?.quality ?? null,
coverage: current?.coverage ?? coverage,
recurrence: current?.recurrence ?? recurrence,
runs: current?.runs ?? (Array.isArray(runs?.runs) ? runs.runs : Array.isArray(runs?.items) ? runs.items : []),
route: current?.route ?? route,
}))
try {
const quality = await fetchJson<AutomationQualitySummary>(
'/api/v1/platform/truth-chain/quality/summary?project_id=awoooi&hours=24&limit=200',
controller.signal
)
if (!controller.signal.aborted) {
setSnapshot((current) => ({
quality: quality ?? current?.quality ?? null,
coverage: current?.coverage ?? coverage,
recurrence: current?.recurrence ?? recurrence,
runs: current?.runs ?? (Array.isArray(runs?.runs) ? runs.runs : Array.isArray(runs?.items) ? runs.items : []),
route: current?.route ?? route,
}))
}
} catch {
if (!controller.signal.aborted) {
setSnapshot((current) => current ?? {
quality: null,
coverage,
recurrence,
runs: Array.isArray(runs?.runs) ? runs.runs : Array.isArray(runs?.items) ? runs.items : [],
route,
})
}
}
} catch (err) {
if (!controller.signal.aborted) {