Skip to content

Passkey smart-account wallet mode #150

Description

@truthixify

Tier: L (5-7 days) | Type: feature

Context. The SDK now exposes WebAuthnPasskeyStealthSigner in sdk/src/chains/stellar/signer.ts, but the demo does not consume it yet: src/pages/Settings.tsx only surfaces the theme preference, and none of the five existing Stellar adapters (Freighter, Albedo, xBull, LOBSTR, WalletConnect) is a passkey peer. Wave 8 introduces passkey as a first-class wallet mode: the app can operate entirely from a passkey-controlled Stellar smart account, sponsor its own fees, and never touch an extension after setup.

Scope.

  • New PasskeyAdapter under src/wallets/stellar/ implementing the shared adapter interface.
  • First-run flow: create-or-import a smart account, register the passkey (PRF extension), fund via friendbot on testnet or a launch-day sponsor on mainnet.
  • Session-key pattern for repeated ops within one browser session (with a documented ceiling).
  • Graceful error state when the browser has no PRF-capable authenticator: render a clear next-step card explaining the requirement and pointing to a supported browser or hardware key.
  • Recording of the full flow on Chrome desktop, iOS Safari, and Android Chrome.

Acceptance.

  • Wallet picker lists Passkey as a peer of Freighter / Albedo / xBull / LOBSTR
  • Fresh account can complete stealth send and stealth withdraw without any extension prompt
  • PRF-absent state renders a clear next-step card, never a silent failure
  • Adapter compiles without @ts-nocheck and has a unit test around the PRF assertion parser

Files. src/wallets/stellar/PasskeyAdapter.ts (new), src/wallets/stellar/index.ts, src/components/StellarWalletPicker.tsx, src/lib/stellar/passkey.ts.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Stellar WaveIssues in the Stellar wave programdemoAuto-created for Wave 8dripsFunded via Drips NetworkfeatureNew feature workhelp wantedExtra attention is neededpasskeyAuto-created for Wave 8securitySecurity-sensitive workstellarTouches Stellar / Soroban codestellar-waveAuto-created for Wave 8wave-8Auto-created for Wave 8

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions