The federation mechanism that will win will be the one that forgejo/gitea supports first.
Everybody is moving either to codeberg or more likely forgejo instance.
Forgejo already supports ActivityPub, albeit only for a minor use case (starring repos), so according to your definition, it's decided already.
I don't think thats so clear. The forges could support multiple federation systems and if for example someone made quality PR for the ATproto version that could get meged and adopted.