From 7ff959b6a8bbdf152da1969687f188ceda4b0561 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 29 Jun 2026 14:45:36 +0800 Subject: [PATCH] fix(ui): keep incident polling tolerant of approval context --- apps/web/src/hooks/useIncidents.ts | 16 ++++++++++------ apps/web/src/lib/api-client.ts | 2 +- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/apps/web/src/hooks/useIncidents.ts b/apps/web/src/hooks/useIncidents.ts index 52781385..1c13a66a 100644 --- a/apps/web/src/hooks/useIncidents.ts +++ b/apps/web/src/hooks/useIncidents.ts @@ -63,16 +63,20 @@ export function useIncidents(options: UseIncidentsOptions = {}): UseIncidentsRes const fetchData = useCallback(async () => { try { - // 並行請求 incidents 和 pending approvals - const [incidentsRes, approvalsRes] = await Promise.all([ - apiClient.listIncidents(), - apiClient.getPendingApprovals(), - ]) + const incidentsRes = await apiClient.listIncidents() + let approvals: ApprovalResponse[] = [] + + try { + const approvalsRes = await apiClient.getPendingApprovals() + approvals = approvalsRes.approvals + } catch { + approvals = [] + } if (!mountedRef.current) return setIncidents(incidentsRes.incidents) - setPendingApprovals(approvalsRes.approvals) + setPendingApprovals(approvals) setError(null) setLastUpdated(new Date()) } catch (err) { diff --git a/apps/web/src/lib/api-client.ts b/apps/web/src/lib/api-client.ts index b3a9395c..cdaea806 100644 --- a/apps/web/src/lib/api-client.ts +++ b/apps/web/src/lib/api-client.ts @@ -1027,7 +1027,7 @@ export const apiClient = { // ========================================================================= async getPendingApprovals() { - const res = await fetch(`${API_BASE_URL}/approvals/pending`) + const res = await fetch(`${API_BASE_URL}/approvals/pending?project_id=awoooi`) return handleResponse(res) },