Hello @Petersaints,
Basically NSX-T on Multisite topology can use Locality to identify from which side the traffic will go through and once that is configured on the different T0, the forwarding of the routes will be always be over the site which has the highers Location (Primary and then Secondary).
In the first point you mentioned, as edge1 and edge2 would be part of the same site, if you use locality, then the failover will happen as the Active-Standby happens in the same site and the routes will keep flowing over the same site.
Regarding the second one, I cannot give you the proper answer, but what I guess it would happen is that after you move the workloads to the Site B, as the Primary location is still active, then the forwarding will keep flowing to the primary datacenter.
This is basically because, so far, in Federation, Local Egress cannot be configured and because of that, it always uses locality. Of course this explanation applies to Stretched Networks.
Give it a look at the next post from one of the folks of the community that has a practical use case and is extremely well explained: https://vxplanet.com/2021/04/22/nsx-t-federation-part-2-stretched-a-s-tier-0-gateway-with-location-p...