{"record":{"id":"2a62e6aee7fc1a66","repo":"diegosouzapw/OmniRoute","slug":"api-response-status-await-response-text-2a62e6","errorCode":null,"errorMessage":"API [${response.status}]: ${await response.text().catch(() => \"error\")}","messagePattern":"API \\[(.+?)\\]: (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/lib/a2a/skills/healthReport.ts","lineNumber":30,"sourceCode":"type ProviderHealthEntry = {\n  state?: string;\n  failures?: number;\n  retryAfterMs?: number;\n  lastFailure?: string | null;\n};\n\nconst OMNIROUTE_BASE_URL = resolveOmniRouteBaseUrl();\nconst OMNIROUTE_API_KEY = process.env.OMNIROUTE_API_KEY || \"\";\n\nasync function healthFetch(path: string): Promise<JsonRecord> {\n  const url = `${OMNIROUTE_BASE_URL}${path}`;\n  const headers: Record<string, string> = {\n    \"Content-Type\": \"application/json\",\n    ...(OMNIROUTE_API_KEY ? { Authorization: `Bearer ${OMNIROUTE_API_KEY}` } : {}),\n  };\n  const response = await fetch(url, { headers, signal: AbortSignal.timeout(10000) });\n  if (!response.ok) {\n    throw new Error(`API [${response.status}]: ${await response.text().catch(() => \"error\")}`);\n  }\n  return response.json();\n}\n\nfunction asRecord(value: unknown): JsonRecord {\n  return value && typeof value === \"object\" && !Array.isArray(value) ? (value as JsonRecord) : {};\n}\n\nfunction toNumber(value: unknown): number {\n  return typeof value === \"number\" && Number.isFinite(value) ? value : 0;\n}\n\nfunction summarizeProviderHealth(providerHealth: unknown) {\n  const entries = Object.entries(asRecord(providerHealth)).map(([provider, raw]) => ({\n    provider,\n    ...(asRecord(raw) as ProviderHealthEntry),\n  }));\n  const degraded = entries.filter((entry) => entry.state && entry.state !== \"CLOSED\");","sourceCodeStart":12,"sourceCodeEnd":48,"githubUrl":"https://github.com/diegosouzapw/OmniRoute/blob/a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d/src/lib/a2a/skills/healthReport.ts#L12-L48","documentation":"Error \"API [${response.status}]: ${await response.text().catch(() => \"error\")}\" thrown in diegosouzapw/OmniRoute.","triggerScenarios":"Thrown at src/lib/a2a/skills/healthReport.ts:30 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d","analyzedAt":"2026-08-25T18:35:09.898Z","schemaVersion":2},"datasetVersion":"2026-08-25T21:54:21.419Z"}