ADC does mostly adequately specify how client-client connections should start, but it does so in an unintuively organized way, enough so that it should be fixed. This isn’t a behavior change, necessarily, but just a documentation change. Section “3.4. Session hash” says:
When a client first connects, it offers a set of hash functions as SUP features.
Which kicks off a client-client connection. However, the previous two specification sections are a BNF message syntax and list of message types, both ‘passive’, descriptive lists not directly connected to client behavior at all. The two sections following describe client identification types and filelist structure, again, sort of passive aspects of the protocol from the perspective of the state machine.
This one, critical part of the C-C connection of who actually initiates the commands is just buried far from section 5, which describes every other state transition (and, indeed, defines the states). This is simply badly organized and needs fixing.