From 465b7a40a34909bc84290da37cefbe82f3131ea4 Mon Sep 17 00:00:00 2001 From: Viren070 Date: Mon, 14 Jul 2025 21:07:45 +0100 Subject: [PATCH] fix(core): use structuredClone for cache item values to ensure immutability fixes discover only option disappearing after refreshing --- packages/core/src/utils/cache.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/core/src/utils/cache.ts b/packages/core/src/utils/cache.ts index daab6fbf..e2743e55 100644 --- a/packages/core/src/utils/cache.ts +++ b/packages/core/src/utils/cache.ts @@ -152,7 +152,7 @@ export class Cache { if (updateTTL) { item.lastAccessed = now; } - return item.value; + return structuredClone(item.value); } return undefined; } @@ -167,7 +167,10 @@ export class Cache { if (this.cache.size >= this.maxSize) { this.evict(); } - this.cache.set(key, new CacheItem(value, Date.now(), ttl * 1000)); + this.cache.set( + key, + new CacheItem(structuredClone(value), Date.now(), ttl * 1000) + ); } /**