Instead of the cable actually managing this itself, though, couldn't the cable just contain a single, simpler chip containing the metadata on the cable's particular make and properties, which would allow the host port (and client port) to perform variable compensation based on the information received? I suppose this would create a more complex low-level protocol, or possibly require more pins, but for a "universal connector" type of cable I imagine they're going to see a lot of wear, so I would have imagined moving hardware out of them would have been a goal...