[TiDB docs]: the two vectors in VEC_L2_DISTANCE, VEC_COSINE_DISTANCE, and the other vector functions must have the same dimension, otherwise an error is returned, for example ERROR 1105 (HY000): vectors have different dimensions. Convert strings with VEC_FROM_TEXT or CAST(... AS VECTOR); TiDB performs an implicit cast when a format-compliant string is passed to a vector-only function. Use VEC_DIMS to check a vector's dimension before combining operands from different sources.

Context: Vector functions require both operands to have the same dimension. A mismatch is a hard error, not a silent cast.