You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Every standalone embedding script hardcodes its own embedding model name, and they drift from the ecosystem standard (snowflake-arctic-embed2, 1024 dims). Mixed-model vectors silently corrupt the semantic index.
Evidence this is a recurring failure class, not a one-off:
Lessons 285, 321, 537 in the lessons table all describe embedding-model drift incidents
2026-07-26: embed-blog-posts.py was found still using mxbai — fixed by hand, again
Single shared source of truth for the embedding model name + dimensions — e.g. a config file (~/.config/nova-mind/embedding.conf or a table in nova_memory) or an env var, read by all nova-mind embedding scripts at startup.
Grep audit of existing scripts for hardcoded EMBEDDING_MODEL / model-name strings; migrate each to the shared constant.
Optional hardening: scripts fail loudly (refuse to write) if the model they resolve doesn't match the dimension recorded in memory_embeddings, instead of silently inserting mismatched vectors.
Context
Promotion candidate from the lessons→enforcement pipeline: 3+ related lessons means the written rule failed and the system should make the mistake unrepresentable.
Problem
Every standalone embedding script hardcodes its own embedding model name, and they drift from the ecosystem standard (snowflake-arctic-embed2, 1024 dims). Mixed-model vectors silently corrupt the semantic index.
Evidence this is a recurring failure class, not a one-off:
embed-blog-posts.pywas found still using mxbai — fixed by hand, againProposed fix
~/.config/nova-mind/embedding.confor a table in nova_memory) or an env var, read by all nova-mind embedding scripts at startup.EMBEDDING_MODEL/ model-name strings; migrate each to the shared constant.memory_embeddings, instead of silently inserting mismatched vectors.Context