EmbedderMismatch
A candidate was refused because it was written by a different Embedder.identity.
Emitted alongside the Miss it causes, and worth a separate type because a Miss cannot carry the two identities and those are the whole diagnosis. A dashboard that only counts misses sees a hit rate fall to zero with no cause attached; this names the model that wrote the store and the model asking it now, which is usually enough to recognise the deployment that did it.
Expect one per lookup that meets a stale entry, not one per swap: the condition lasts until the old entries are re-embedded or expire. A stream that does not stop is the signal that neither is happening. See docs/MIGRATION.md.
Constructors
Properties
Id of the refused entry, for SemanticCache.invalidate.
The identity of the Embedder this cache is running, from Embedder.identity.
The identity recorded on the refused entry, from CacheEntry.embedder.