Ido's completion behavior is as far from that of
vanilla `completing-read' as is Tmm's completion behavior
This is kind of my point. If someone calls ido-completing-read, you wouldn't expect it to do something different based on the value of completing-read-function, even if it ido used completing-read internally (which it might have actually done in the past, but currently does not), because by calling ido-completing-read the code has already specified it wants ido completion. Similarly, tmm is implementing a very different behavior from completing-read that is only recognizable as regular completion if you specifically go looking for leaks in the abstraction, and for the same reason I don't think tmm should be paying attention to completing-read-function.