Btw, another question - does docking consider the value of the signal sent via circuit signal? Ie. is [item=iron-ore]=1 the same "channel" as [item=iron-ore]=100, or can you run multiple docking channels on the same signal?
The signal quantity matters, yes. So a signal of iron 100 and iron 1 do not dock. Without that you would not be able to circuit control docking ports in a meaningful way.
If there are multiple possible connections (either because multiple matching docking ports share the same signal(/value), or because several different signals which each correspond to matching docking ports are sent at the same time), how does it decide which platform to link with?
If a dock has two options, it will connect to the oldest dock first, since those have the lowest unit number. They’re checked first by the code. It’s the most performant way to do it.