From 953ea852b8801b44d32c3d0069d93552aff2efa7 Mon Sep 17 00:00:00 2001 From: jsahn Date: Wed, 2 Sep 2026 19:52:33 +0900 Subject: [PATCH] Dashboard: keep list/chart alive when the digest detail fetch fails A transient failure (e.g. container swap during redeploy) used to leave the body panel silently empty; show a retry hint in the body instead. Co-Authored-By: Claude Fable 5 --- dashboard/src/client/main.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/dashboard/src/client/main.ts b/dashboard/src/client/main.ts index 98bc526..628d32e 100644 --- a/dashboard/src/client/main.ts +++ b/dashboard/src/client/main.ts @@ -348,7 +348,17 @@ async function main(): Promise { const select = async (week: string) => { selected = week; renderList(summaries, selected, (w) => void select(w)); - await showDigest(week); + try { + await showDigest(week); + } catch (err) { + // 서버 재기동 순간 등 일시 실패: 본문만 안내로 대체하고 목록/차트는 살려둔다 + console.error(err); + const body = byId("digest-body"); + body.textContent = ""; + body.append( + el("p", "chart-empty", `${week} 다이제스트를 불러오지 못했습니다 — 새로고침하거나 다시 선택해 주세요.`), + ); + } }; await select(selected); }