Engine
One engine, every type.
Records, relations and vectors live in the same engine, over the same gravity. Embeddings are stored as lossless f32, at any dimension. Quantizing to int8 would save memory, but it trades what the engine returns for something close to it; we'd rather it stay exact. And because the vector sits next to the record it describes, filtering and similarity search are one operation, not two systems kept in sync.