From 13ac2bbddeff3262224afabc57bb5dc03436cfb5 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 16 Feb 2026 12:37:31 +0000 Subject: [PATCH 1/2] Initial plan From a765576c869414902551b48265288aedea5ec76e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 16 Feb 2026 12:39:26 +0000 Subject: [PATCH 2/2] fix: wrap onError callback in try-catch to prevent masking original errors Co-authored-by: mfeltscher <1352744+mfeltscher@users.noreply.github.com> --- src/cache-tags/provider/base.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/cache-tags/provider/base.ts b/src/cache-tags/provider/base.ts index 14a819d..7a7c191 100644 --- a/src/cache-tags/provider/base.ts +++ b/src/cache-tags/provider/base.ts @@ -28,7 +28,14 @@ export abstract class AbstractErrorHandlingCacheTagsProvider implements CacheTag return await fn(); } catch (error) { const provider = this.providerName; - this.onError?.(error, { provider, method, args }); + + // Call onError callback if provided, but guard against exceptions + // to prevent masking the original provider error + try { + this.onError?.(error, { provider, method, args }); + } catch (handlerError) { + console.error(`Error handler itself failed in ${provider}.${method}.`, { handlerError }); + } if (this.throwOnError) { throw error;