v3.38.14 β memory_store tags cache-loss fix (#3051)
Follow-up patch to v3.38.13 β fixes the last of the recently-reported issues.
Fix
#3051 β memory_store accepted a tags array and returned success: true, but the very next memory_retrieve (or memory_list) came back with tags: [].
Root cause was in bridgeStoreEntry: after the DB insert (which serialized tags correctly to the tags column), the write-through cache set stored only a partial entry β { id, key, namespace, content, embedding } β with no tags. The next bridgeGetEntry hit that cache and returned tags: cached.tags || [] = [].
Fix: replace the partial write-through with cache invalidation. Next read re-fetches the authoritative row (which correctly parses the tags JSON column) and repopulates the cache with the full shape. Side benefit: same defect had also caused access_count, createdAt, and updatedAt to be stale from the cache β invalidation fixes those too.
Proven regression test in __tests__/memory-store-tags-cache-3051.test.ts: pre-fix returns tags: [], post-fix returns the real tags.
Install
npx ruflo@latest(or@alpha/@v3alphaβ all three tags aligned)
Merged PR
π€ Generated with RuFlo