Good stuff, but it's telling me that my USB-C Thunderbolt cable has been plugged in upside down but the connector handled this. I was not aware that you can plug in something into USB-C upside down!
I wasn't either (insomuch as I had never thought about it), but it makes sense if you think about it for a second. If you have one end plugged in one way, and the other end plugged in the other way, each individual wire is flipped from where it should be. The fact that you _can_ plug it in either way means that the device on one end needs to be capable of recognizing that and logically reversing it. Same as automatic crossover in Ethernet.
That's all the program is telling you. It doesn't matter that it's backwards, but technically it is.
It's the cable that is supposed to reverse itself and not the device? I'm not entirely sure I buy that - seems like it would add a lot of unnecessary complexity to every cable.
The terminating device(s) are the ones that do the flipping, not the cable. You can take a cable that works either way between two high-end device, and then connect it to at least one low-end device and it will fail to connect for one of the two orientations.
You can't. This software is leaking implementation details of USB-C and you really don't need to know this. I understand it's tempting to show everything, but the author should have exercised restraint here (this is assuming they were consciously involved at all, of course).
That's all the program is telling you. It doesn't matter that it's backwards, but technically it is.