I discovered this documented behaviour in the REPL: when matrix-multiplying two tensors with incompatible names (but compatible dimensions), it just works.
I thought the point of named tensors was to check for correct behaviour at runtime. Why aren’t the names checked here?