Doesn’t oauth help here?
2. What does the registration process look like?
OAuth helps with federated authentication. It's not federated registration.
2. Click “sign in with provider” log in as normal, or just get logged in if you have a cookie.
3. These are functionally identical, it’s 2 clicks to create an account on gitlab if you use an external identity provider.