From f10914bbe77d7a3471fc34ad160f8bc6aa34f324 Mon Sep 17 00:00:00 2001 From: Haitao Pan Date: Thu, 9 Apr 2026 14:04:36 +0800 Subject: [PATCH] fix(user-center): narrow agent node error payload typing --- .../builtin/user-center/lib/fetchAgentNodes.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/modules/extensions/builtin/user-center/lib/fetchAgentNodes.ts b/src/modules/extensions/builtin/user-center/lib/fetchAgentNodes.ts index ea53927..d5b5d28 100644 --- a/src/modules/extensions/builtin/user-center/lib/fetchAgentNodes.ts +++ b/src/modules/extensions/builtin/user-center/lib/fetchAgentNodes.ts @@ -18,11 +18,17 @@ type AgentNodesError = Error & { status?: number } +function isAgentNodeErrorPayload( + payload: AgentNodePayload | null, +): payload is Exclude { + return !!payload && !Array.isArray(payload) +} + function extractMessage(payload: AgentNodePayload | null, status: number): string { - if (payload && typeof payload.message === 'string' && payload.message.trim().length > 0) { + if (isAgentNodeErrorPayload(payload) && typeof payload.message === 'string' && payload.message.trim().length > 0) { return payload.message } - if (payload && typeof payload.error === 'string' && payload.error.trim().length > 0) { + if (isAgentNodeErrorPayload(payload) && typeof payload.error === 'string' && payload.error.trim().length > 0) { return payload.error } return `Request failed (${status})`