Summary
Replace the temporary account perfomer with a new, anonymous user performer when creating a named account
Background
- As discussed with Legal in T335508: Connect temporary and permanent account during signup in Special:CheckUser / Special:Investigate, it's important to avoid leaking the association between a temporary account and a permanent account. In the temporary account to permanent account creation workflow, it's easiest to avoid leaking the temporary account's identity in various code paths if we require the temporary account user to be logged-out before creating a permanent account.
- Some options for this include:
- Log the temporary account user out upon visiting Special:CreateAccount (and in API attempts)
- Introduce a modal on clicks to "Create account", where "Proceed" does an API call to logout before redirecting to Special:CreateAccount
- Swap out the temporary account performer in AuthManager::beginAccountCreation with a new anonymous user object
Acceptance criteria
- The performer seen in AuthManager::beginAccountCreation is an anonymous user object