rspace-online/scripts
Jeff Emmett be271de7fb feat: add Gnosis Safe + EncryptID passkey wallet abstraction
Derive a deterministic secp256k1 EOA from the passkey's PRF output via
HKDF-SHA256, enabling hardware-backed signing for x402 micropayments and
Safe treasury proposals without storing private keys.

Key changes:
- EOA key derivation with domain-separated HKDF (eoa-derivation.ts)
- Key manager integration with PRF-only EOA path (key-derivation.ts)
- Encrypted client-side wallet store for Safe associations (wallet-store.ts)
- Passkey-backed x402 signer replacing EVM_PRIVATE_KEY (passkey-signer.ts)
- Safe propose/confirm/execute proxy routes in rwallet (mod.ts)
- Wallet capability flag in JWT via users.wallet_address (server.ts)
- Payment operation permissions: x402, safe-propose, safe-execute (session.ts)

Privacy: Safe wallet associations stored client-side only (AES-256-GCM
encrypted localStorage). Server only knows user has wallet capability.

108 tests passing across 5 test suites.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 12:18:34 -08:00
..
seed-infisical.sh feat: move rApp secrets to Infisical, add seed script 2026-03-01 18:06:21 -08:00
test-eoa-derivation.ts feat: add Gnosis Safe + EncryptID passkey wallet abstraction 2026-03-02 12:18:34 -08:00
test-key-manager-eoa.ts feat: add Gnosis Safe + EncryptID passkey wallet abstraction 2026-03-02 12:18:34 -08:00
test-passkey-signer.ts feat: add Gnosis Safe + EncryptID passkey wallet abstraction 2026-03-02 12:18:34 -08:00
test-session-permissions.ts feat: add Gnosis Safe + EncryptID passkey wallet abstraction 2026-03-02 12:18:34 -08:00
test-wallet-store.ts feat: add Gnosis Safe + EncryptID passkey wallet abstraction 2026-03-02 12:18:34 -08:00
test-x402.ts feat: add x402 test endpoint and payment test script 2026-03-02 00:28:55 -08:00