mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-04-27 01:11:40 +00:00
new_session() was popping the old cached session, releasing the lock, calling get_or_create, then re-acquiring the lock to insert. A concurrent caller could observe the empty-cache window and race-create its own session, producing two divergent session objects for the same key. _cache_lock is an RLock, so nested reacquisition inside get_or_create is safe. Hold it across the whole pop/create/insert sequence. Follow-up to #13510 (@hekaru-agent). |
||
|---|---|---|
| .. | ||
| context_engine | ||
| disk-cleanup | ||
| example-dashboard/dashboard | ||
| image_gen | ||
| memory | ||
| spotify | ||
| strike-freedom-cockpit | ||
| __init__.py | ||