From 225a2312a70432d4ca92ec4866127e0356b826c9 Mon Sep 17 00:00:00 2001 From: Mitch Fultz <57411549+fitchmultz@users.noreply.github.com> Date: Wed, 3 Jun 2026 11:27:10 -0600 Subject: [PATCH] Fix #121 via Reprodeck --- src/cursor-sdk-process-error-guard.ts | 2 +- test/cursor-sdk-process-error-guard.test.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/cursor-sdk-process-error-guard.ts b/src/cursor-sdk-process-error-guard.ts index 52b3f34..bd15b1d 100644 --- a/src/cursor-sdk-process-error-guard.ts +++ b/src/cursor-sdk-process-error-guard.ts @@ -35,7 +35,7 @@ function shouldSuppressProcessError(event: string | symbol, args: readonly unkno const classification = classifyCursorConnectError(error); if (!classification) return false; if (classification.kind === "abort") return hasActiveAbortSuppression(); - return activeProviderTurns.size > 0 && isCursorProvenance(classification.source); + return activeProviderTurns.size > 0 && (classification.kind === "network" || isCursorProvenance(classification.source)); } function installProcessEmitPatch(): void { diff --git a/test/cursor-sdk-process-error-guard.test.ts b/test/cursor-sdk-process-error-guard.test.ts index 434fdbd..d871fa4 100644 --- a/test/cursor-sdk-process-error-guard.test.ts +++ b/test/cursor-sdk-process-error-guard.test.ts @@ -225,7 +225,7 @@ describe("Cursor SDK process error guard", () => { } }); - it("does not suppress non-Cursor network ConnectErrors", () => { + it("suppresses generic connect-node network ConnectErrors while a provider turn is active", () => { const suppression = installCursorSdkProcessErrorGuard(); let listenerCalled = false; const listener = () => { @@ -235,7 +235,7 @@ describe("Cursor SDK process error guard", () => { try { const emitted = process.emit("uncaughtException", makeNonCursorNetworkConnectError(), "uncaughtException"); expect(emitted).toBe(true); - expect(listenerCalled).toBe(true); + expect(listenerCalled).toBe(false); } finally { process.removeListener("uncaughtException", listener); suppression.dispose();