@rhinestone/1auth 0.10.1 release lets a user who loses every passkey prove the same email or OAuth identity and add a new passkey to that application’s existing smart account.
This managed-wallet flow is separate from SDK guardian recovery, where your application installs and operates its own onchain guardian accounts.
Configure account creation
Add the verified-identity fallback to the same client used for sign-up and login.clientConfig is your provider, client ID, and sponsorship configuration from the shared client initialization:
recovery.fallback is an account-creation policy. Adding it to a client later does not retrofit recovery onto an already-created account.
Validate the app-origin session
CallsetupRecovery() after a successful login or account creation when you need to validate the current app-origin session and namespace:
completed: true. It does not inspect the account’s guardian or recovery configuration. An already-created account without a recovery guardian can therefore return completed: true.
Do not use this result to gate a “recovery ready” state. It proves only that the current origin, RP ID, and account namespace have a valid session. It does not perform lost-passkey recovery, create a guardian, or open the centralized recovery-passphrase and backup-file flow.
On a client explicitly using
webauthn: { mode: "experimental_cross_origin" }, setupRecovery() has different behavior: it opens the provider-owned backup flow. Do not switch modes to reach that UI because the modes use different accounts.