similar to SIWE account creation logic. differences:
- signedIdentityKeysBlob must be present
- we use the UserIdentifier type to get the username (and eth address if present)
- we don't send a reserved username request since this user has already registered with identity
not deduping because we eventually want to deprecate the siwe account creation function anyway
Depends on D10491
wondering, shouldn't we also add action.type === fullStateSyncActionType?