Skip to content

Add optional CDP embedded wallets - #1292

Open
ebma wants to merge 18 commits into
stagingfrom
codex/privy-embedded-wallets
Open

Add optional CDP embedded wallets#1292
ebma wants to merge 18 commits into
stagingfrom
codex/privy-embedded-wallets

Conversation

@ebma

@ebma ebma commented Jul 28, 2026

Copy link
Copy Markdown
Member

Summary

  • add optional Coinbase Developer Platform (CDP) embedded EVM wallets to the dashboard and widget, while leaving external wallets and Substrate/Polkadot flows unchanged
  • authenticate CDP users with the existing Supabase identity, verify wallet ownership server-side, and store profile-scoped wallet mode/registry data
  • support EIP-712, canonical Vortex SIWE, and raw EIP-1559 signing with application-managed broadcasting across EVM networks
  • add independent, default-off controls for provisioning, signing, onramp, offramp, and export; sensitive operations fail closed and require exact user confirmation
  • sync with current staging, preserve its newer authentication safeguards, and reconcile the wallet migrations as 063/064 for development databases that ran the earlier numbers
  • upgrade the CDP SDK packages together to 0.0.120 and make the spike/unit/CDP-choice suites part of automated build and test workflows

Current status

The source implementation and test-environment hardening are complete. Production activation remains deliberately blocked by RISK-018 and the gates in docs/operations-cdp-embedded-wallet-rollout.md.

The conservative documented assumption is that the current test CDP project and future production project are distinct and project-scoped. We will not copy wallet ownership records or promise transparent wallet migration unless Coinbase confirms project promotion or an internally supported migration in writing.

Other assumptions awaiting production access are tracked as CDP-A1 through CDP-A7, covering the production project lifecycle, exact custom-auth claims/JWKS, policy semantics, MFA/delegation controls, export behavior, and browser confirmation behavior in the approved iframe/origin matrix.

Verification completed

  • bun run test (all workspace unit/integration suites)
  • bun run typecheck
  • bun run build
  • bun run verify
  • API wallet/configuration and database migration/reconciliation tests
  • dashboard and widget CDP signing-adapter tests, including typed data, EIP-1559 forwarding, BSC fee fallback, raw broadcasting, and fail-closed paths
  • CDP spike tests
  • frontend and dashboard test:e2e:cdp wallet-choice suites

The Playwright CDP-choice suites are intentionally mocked UI tests. They do not replace credentialed CDP smoke testing.

Required before production enablement

  • obtain the company production CDP project and confirm whether the current test project can be promoted or migrated
  • configure and verify production custom auth (JWKS, iss, aud, immutable user identifier) and exact HTTPS origin allowlists
  • install fail-closed CDP signing policies, verify delegation remains disabled, require MFA as agreed, and validate policy behavior with low-value mainnet transactions
  • complete the production CSP/third-party-script inventory, monitoring, alerts, incident response, and rollback/kill-switch drills
  • run the credentialed matrix for create/restore/logout, export/recovery, Base and BSC plus every enabled EVM corridor, ownership mismatch, iframe origins, log redaction, and rollback
  • rerun custom-JWT reload/restore against the available CDP test account after the 0.0.120 SDK upgrade

No production CDP feature flag should be enabled until those gates have recorded evidence and approval.

@netlify

netlify Bot commented Jul 28, 2026

Copy link
Copy Markdown

Deploy Preview for vortex-sandbox ready!

Name Link
🔨 Latest commit 932246b
🔍 Latest deploy log https://app.netlify.com/projects/vortex-sandbox/deploys/6a763007f5452d000855f21b
😎 Deploy Preview https://deploy-preview-1292--vortex-sandbox.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify

netlify Bot commented Jul 28, 2026

Copy link
Copy Markdown

Deploy Preview for vortexfi ready!

Name Link
🔨 Latest commit 932246b
🔍 Latest deploy log https://app.netlify.com/projects/vortexfi/deploys/6a76300765f09e00070e4df8
😎 Deploy Preview https://deploy-preview-1292--vortexfi.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify

netlify Bot commented Jul 28, 2026

Copy link
Copy Markdown

Deploy Preview for vrtx-dashboard ready!

Name Link
🔨 Latest commit 932246b
🔍 Latest deploy log https://app.netlify.com/projects/vrtx-dashboard/deploys/6a763007fe299000087cc293
😎 Deploy Preview https://deploy-preview-1292--vrtx-dashboard.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@ebma
ebma force-pushed the codex/privy-embedded-wallets branch from 070e299 to 6c140b0 Compare July 28, 2026 09:02
@ebma ebma changed the title Add optional Privy embedded wallets Add optional support for embedded wallets Jul 30, 2026
@ebma ebma changed the title Add optional support for embedded wallets Add optional CDP embedded wallets Aug 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant