Skip to content

Commit 586b891

Browse files
authored
fix: replace snack-break empty reply copy (#65)
1 parent 5f6a449 commit 586b891

2 files changed

Lines changed: 10 additions & 12 deletions

File tree

src/__tests__/debate-engine.test.ts

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -407,32 +407,30 @@ describe("resolveProviderContent", () => {
407407
expect(result).toBe("Option A is the better choice.")
408408
})
409409

410-
it("substitutes EN snack-break fallback when server flags empty", () => {
410+
it("substitutes EN empty-response fallback when server flags empty", () => {
411411
const result = resolveProviderContent("", true, "en", "gemini")
412-
expect(result).toBe("Gemini stepped out for a snack break. Back soon.")
412+
expect(result).toBe("Gemini couldn't reply this round.")
413413
})
414414

415-
it("substitutes KO snack-break fallback when server flags empty", () => {
415+
it("substitutes KO empty-response fallback when server flags empty", () => {
416416
const result = resolveProviderContent("", true, "ko", "gemini")
417-
expect(result).toBe("Gemini 잠깐 간식 먹으러 갔어요. 곧 돌아올게요.")
417+
expect(result).toBe("Gemini가 이번 라운드에 답하지 못했어요.")
418418
})
419419

420420
it("substitutes fallback when raw content is whitespace only", () => {
421421
const result = resolveProviderContent(" \n\t ", false, "en", "claude")
422-
expect(result).toBe("Claude stepped out for a snack break. Back soon.")
422+
expect(result).toBe("Claude couldn't reply this round.")
423423
})
424424

425425
it("substitutes fallback when cleanResponse strips content to nothing", () => {
426426
// cleanResponse removes citation markers and horizontal rules; if that's
427427
// all the model returned we should still surface the fallback.
428428
const result = resolveProviderContent("[1][2][3]", false, "en", "perplexity")
429-
expect(result).toBe("Perplexity stepped out for a snack break. Back soon.")
429+
expect(result).toBe("Perplexity couldn't reply this round.")
430430
})
431431

432432
it("uses provider display name in the fallback", () => {
433-
expect(resolveProviderContent("", true, "en", "gpt")).toBe(
434-
"GPT stepped out for a snack break. Back soon."
435-
)
433+
expect(resolveProviderContent("", true, "en", "gpt")).toBe("GPT couldn't reply this round.")
436434
})
437435

438436
it("does not call fallback when content has any real text", () => {

src/hooks/useDebateEngine.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,8 @@ export const SYSTEM_MESSAGES = {
5757
: "The AI hit a temporary rate limit. Wait a few seconds and send again.",
5858
emptyResponse: (locale: Locale, provider: Provider) =>
5959
locale === "ko"
60-
? `${DISPLAY_NAMES[provider]} 잠깐 간식 먹으러 갔어요. 곧 돌아올게요.`
61-
: `${DISPLAY_NAMES[provider]} stepped out for a snack break. Back soon.`,
60+
? `${DISPLAY_NAMES[provider]}가 이번 라운드에 답하지 못했어요.`
61+
: `${DISPLAY_NAMES[provider]} couldn't reply this round.`,
6262
missingApiKey: (locale: Locale, provider: Provider) => getMissingApiKeyMessage(provider, locale),
6363
missingConsensusKey: (locale: Locale) =>
6464
locale === "ko"
@@ -485,7 +485,7 @@ export function useDebateEngine(config: {
485485
updatePlaceholder(msg)
486486
return null
487487
}
488-
// Covers transport errors and the route's {error} channel. Raw upstream errors are unactionable in a bubble - show the snack-break fallback and keep detail in logDebate (console.error would pop the dev overlay on a handled rejection).
488+
// Covers transport errors and the route's {error} channel. Raw upstream errors are unactionable in a bubble - show a short fallback and keep detail in logDebate.
489489
const errorMsg = err instanceof Error ? err.message : "Unknown error"
490490
logDebate("callModel:error", { provider, error: errorMsg })
491491
clearTypingIfCurrentSession()

0 commit comments

Comments
 (0)