Skip to content

v3.12.3 β€” #2395 fix: MCP no longer emits 128-dim mock embeddings

Choose a tag to compare

@ruvnet ruvnet released this 17 Jun 23:38
· 25 commits to main since this release

Bundled fix

#2395 β€” MCP memory_store emitted 128-dim mock embeddings (data quality regression)

Symptom (per issue): standalone CLI used real 384-dim ONNX embeddings, but the in-session MCP path persistently emitted 128-dim hash-fallback ("mock") embeddings β€” silently corrupting similarity recall and wasting any benefit of vector memory.

Root cause: bridgeGenerateEmbedding returned embedder.embed() results labeled backend: 'onnx' unconditionally, even when AgentDB's vectorBackend controller silently fell back to a 128-dim hash stub. The stub didn't expose isMock=true, so the existing isMock check let it through with a wrong label.

Fix: dimensional sanity check. The hardcoded model name Xenova/all-MiniLM-L6-v2 always produces 384-dim; anything else is definitively a stub. Return null from the bridge wrapper in that case so the caller falls through to generateLocalEmbedding, which routes via the real ONNX chain (transformers.js / ruvector).

Net: backend labels now match actual semantics, no more silent mock embeddings.

Install

npx ruflo@3.12.3
# or
npm i ruflo@latest

All 3 packages Γ— 3 dist-tags published in lockstep.

πŸ€– Generated with RuFlo