From ef9e8d0619ee0dbbf3d9106b7c55e9c034a6d349 Mon Sep 17 00:00:00 2001 From: Benedikt Schackenberg <6381261+BenediktSchackenberg@users.noreply.github.com> Date: Tue, 17 Mar 2026 20:06:33 +0000 Subject: [PATCH] fix: preserve error cause, fix test mock typing - Add { cause: err } to thrown Error for upstream debugging - Use 'as unknown as string' cast for undefined-id test mock --- extensions/discord/src/monitor/provider.test.ts | 2 +- extensions/discord/src/monitor/provider.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/extensions/discord/src/monitor/provider.test.ts b/extensions/discord/src/monitor/provider.test.ts index c43cbee1fd7..d2437ddb32d 100644 --- a/extensions/discord/src/monitor/provider.test.ts +++ b/extensions/discord/src/monitor/provider.test.ts @@ -646,7 +646,7 @@ describe("monitorDiscordProvider", () => { const { monitorDiscordProvider } = await import("./provider.js"); const runtime = baseRuntime(); - clientFetchUserMock.mockResolvedValueOnce({ id: undefined, username: "NoId" }); + clientFetchUserMock.mockResolvedValueOnce({ id: undefined as unknown as string, username: "NoId" }); await expect( monitorDiscordProvider({ diff --git a/extensions/discord/src/monitor/provider.ts b/extensions/discord/src/monitor/provider.ts index aa38bf6cfc3..cba7bb0b2d5 100644 --- a/extensions/discord/src/monitor/provider.ts +++ b/extensions/discord/src/monitor/provider.ts @@ -884,7 +884,7 @@ export async function monitorDiscordProvider(opts: MonitorDiscordOpts = {}) { // messages pass through), self-message filtering is disabled (risk of // self-reply loops), and reply detection is broken. Let auto-restart // retry instead of running in a degraded state. See #42219. - throw new Error(`discord: cannot start without bot identity: ${String(err)}`); + throw new Error(`discord: cannot start without bot identity: ${String(err)}`, { cause: err }); } if (!botUserId) { // fetchUser succeeded but returned no id — equally unsafe to continue.