Baida07 commited on
Commit
e19e6ec
Β·
verified Β·
1 Parent(s): 10ba334

fix: sync scheduler memory manager factory

Browse files
Files changed (1) hide show
  1. api/state.py +18 -0
api/state.py CHANGED
@@ -161,6 +161,24 @@ def _get_planner() -> Any:
161
  except Exception: _planner = None
162
  return _planner
163
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
164
  # ── Prune helpers ─────────────────────────────────────────────────────────────
165
  def _prune_checkpoints() -> None:
166
  now = int(time.time() * 1000)
 
161
  except Exception: _planner = None
162
  return _planner
163
 
164
+
165
+ _memory_manager: Any = None
166
+ _memory_manager_lock = _asyncio_mod.Lock()
167
+
168
+ async def _get_mem_manager_async() -> Any:
169
+ """Return the shared initialized MemoryManager for agent runs."""
170
+ global _memory_manager
171
+ if _memory_manager is not None:
172
+ return _memory_manager
173
+ async with _memory_manager_lock:
174
+ if _memory_manager is not None:
175
+ return _memory_manager
176
+ from memory.manager import MemoryManager
177
+ manager = MemoryManager(sb_client=_get_sb())
178
+ await manager.init()
179
+ _memory_manager = manager
180
+ return _memory_manager
181
+
182
  # ── Prune helpers ─────────────────────────────────────────────────────────────
183
  def _prune_checkpoints() -> None:
184
  now = int(time.time() * 1000)