Just to note, I don't think you need to worry about the scalar cases, if we go that direction, they should be handled already further down by gh-2891. So my guess is this needs very little changes to be ready.