From cb82b2b7e1b16cb12c3607a13b16d99d4da2870b Mon Sep 17 00:00:00 2001 From: Junebugg1214 <82672745+Junebugg1214@users.noreply.github.com> Date: Fri, 13 Mar 2026 12:44:17 -0400 Subject: [PATCH] fix: await pending memory manager creation on reset --- src/memory/manager.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/memory/manager.ts b/src/memory/manager.ts index 3a0ff97f819..60db6b5d57a 100644 --- a/src/memory/manager.ts +++ b/src/memory/manager.ts @@ -43,10 +43,16 @@ const INDEX_CACHE = new Map(); const INDEX_CACHE_PENDING = new Map>(); export async function closeAllMemoryIndexManagers(): Promise { - const managers = Array.from(INDEX_CACHE.values()); + const pendingManagers = await Promise.allSettled(Array.from(INDEX_CACHE_PENDING.values())); + const managers = new Set(INDEX_CACHE.values()); + for (const result of pendingManagers) { + if (result.status === "fulfilled") { + managers.add(result.value); + } + } INDEX_CACHE.clear(); INDEX_CACHE_PENDING.clear(); - await Promise.allSettled(managers.map(async (manager) => await manager.close())); + await Promise.allSettled(Array.from(managers, async (manager) => await manager.close())); } export class MemoryIndexManager extends MemoryManagerEmbeddingOps implements MemorySearchManager {