But the main thing is to avoid minibuffer expansion and shrinkage.
Why is that the main thing? Why is that even a goal?
Because some people don't like it or because it sometimes
can't be done.
If it can't be done, then it can't be done. Can't argue with that.
But it doesn't seem right for the only echo-area display of tooltip
help to truncate it at the frame width. Joining the lines is not
a problem, but losing some of the info could be.
Make such truncation an option, if you want, and even make it the
default way of displaying a tooltip in the echo area, if you want. But
there should be some way for users to see the complete tooltip text in
the echo area.
Oh, you're arguing about the truncation part, not the single-line part.
Then I agree it might be better to not bother truncating.