From 760e9b3df56f216bbaae83cf4d97fbf773e16baf Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Fri, 9 Jan 2026 14:36:02 +0100 Subject: [PATCH] fix: avoid Windows runner unicode crash (#567) --- src/config/types.ts | 1 - src/logging.ts | 12 +++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/config/types.ts b/src/config/types.ts index 10099821a..45413dfb9 100644 --- a/src/config/types.ts +++ b/src/config/types.ts @@ -1212,7 +1212,6 @@ export type AgentDefaultsConfig = { | "msteams" | "signal" | "imessage" - | "msteams" | "none"; /** Optional delivery override (E.164 for WhatsApp, chat id for Telegram). */ to?: string; diff --git a/src/logging.ts b/src/logging.ts index e3ded381c..3c8604430 100644 --- a/src/logging.ts +++ b/src/logging.ts @@ -503,13 +503,19 @@ function formatConsoleLine(opts: { } function writeConsoleLine(level: Level, line: string) { + const sanitized = + process.platform === "win32" && process.env.GITHUB_ACTIONS === "true" + ? line + .replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, "?") + .replace(/[\uD800-\uDFFF]/g, "?") + : line; const sink = rawConsole ?? console; if (forceConsoleToStderr || level === "error" || level === "fatal") { - (sink.error ?? console.error)(line); + (sink.error ?? console.error)(sanitized); } else if (level === "warn") { - (sink.warn ?? console.warn)(line); + (sink.warn ?? console.warn)(sanitized); } else { - (sink.log ?? console.log)(line); + (sink.log ?? console.log)(sanitized); } }