restoreSeed
Sign in with an existing passkey — the post-PRF replacement for the old "restore from cloud" flow.
What changed. Pre-PRF this method:
Pulled an encrypted blob from Block Store
Decrypted it to recover (seed, sigil triple, appMetadata)
Wrote the seed into SeedVault
SIGKILL'd the process so the wallet panel rebuilt cleanly
Post-PRF none of (1)–(4) is necessary for the SIGIL ITSELF:
The seed derives from
PRF(passkey, SEED_SALT)—WalletSeedSourcehandles that on the next wallet action, no blob needed.The sigil DID derives from
PRF(passkey, SIGIL_SALT)via SigilIdentityProvider — that's what step 1 below does.The SDK lives on a stable PRF-derived seed regardless of how long ago the user last authenticated, so no SIGKILL needed.
The Block Store blob is now narrower in scope: it carries only the host-app's metadata (Kicks's match state, etc.). Step 2 below pulls it through to the registered AppDataBackupProvider when a blob is available; absent or v1-legacy blobs are silently tolerated.