From dacccf13749780f84dd266cc2be3bab2b033560c Mon Sep 17 00:00:00 2001 From: Michael Wu Date: Sun, 18 Oct 2026 05:19:33 +0900 Subject: [PATCH] fix(app): localize Claude session window --- packages/app/src/usage/format.test.ts | 2 ++ packages/app/src/usage/format.ts | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/app/src/usage/format.test.ts b/packages/app/src/usage/format.test.ts index f92d13df1f..cdb0e7dd26 100644 --- a/packages/app/src/usage/format.test.ts +++ b/packages/app/src/usage/format.test.ts @@ -79,7 +79,9 @@ describe("formatAmount", () => { await i18n.changeLanguage("ko"); expect(formatProviderUsageLabel("session", "Session")).toBe("세션"); + expect(formatProviderUsageLabel("five_hour", "Session")).toBe("세션"); expect(formatProviderUsageLabel("five_hour", "5-hour limit")).toBe("5-hour limit"); + expect(formatProviderUsageLabel("monthly", "Monthly")).toBe("월간"); expect(formatProviderUsageLabel("credits", "Credits")).toBe("크레딧"); expect(formatProviderUsageLabel("custom_limit", "Custom limit")).toBe("Custom limit"); }); diff --git a/packages/app/src/usage/format.ts b/packages/app/src/usage/format.ts index af5c10f7d8..b025e3b117 100644 --- a/packages/app/src/usage/format.ts +++ b/packages/app/src/usage/format.ts @@ -12,7 +12,11 @@ const providerUsageLabelKeys = { } as const; export function formatProviderUsageLabel(id: string, fallback: string): string { - const key = providerUsageLabelKeys[id as keyof typeof providerUsageLabelKeys]; + const key = + providerUsageLabelKeys[id as keyof typeof providerUsageLabelKeys] ?? + // Claude exposes its session window with a five-hour ID. Other sources use that same ID for + // literal five-hour quotas, so retain their provider label unless this is Claude's Session. + (id === "five_hour" && fallback === "Session" ? providerUsageLabelKeys.session : undefined); return key ? i18n.t(key) : fallback; }