Right. In that case, I’ll explain this:
For the JoinRequest, any datarate DR0 to DR5 is allowed here - given dutycycle restrictions, DR0 and DR1 are not possible for the JoinRequest on your band.
RadioLib by default uses dr = (maxDr + minDr) / 2. Using the maximum datarate would result in too many posts about people not getting a Join to their neighbourhood gateway; using minimum datarate would be overkill for 99% of scenarios. That’s why we settled on average datarate favouring range.
For subsequent uplinks after join, this datarate is kept - given that the join was successful, why not stick to that datarate? If it’s overkill, ADR should almost immediately kick in. If not on the first, then on the second downlink, unless SF10 is actually a reasonable SF given the RSSI and SNR.