Skip to content

chore: KEEP-230 remove Para SDK and supporting code#1148

Draft
joelorzet wants to merge 1 commit intostagingfrom
chore/KEEP-230-decom-para
Draft

chore: KEEP-230 remove Para SDK and supporting code#1148
joelorzet wants to merge 1 commit intostagingfrom
chore/KEEP-230-decom-para

Conversation

@joelorzet
Copy link
Copy Markdown

Summary

Follow-up to PR #983 (Para signing decom). Removes the remaining Para surface area now that Turnkey is the sole wallet provider.

  • Drops @getpara/ethers-v6-integration and @getpara/server-sdk; deletes lib/para/, lib/encryption.ts (Para MPC user-share helpers), and the specs/web3/PARA_* docs.
  • Replaces the Para-backed viem LocalAccount used by the sponsored ERC-4337 client with a Turnkey-backed adapter (lib/web3/turnkey-viem-account.ts). Moves wallet helpers out of lib/para/ to lib/web3/wallet-helpers.ts and drops the deprecated user-id-keyed lookups.
  • Deletes Para-only API routes (/api/user/wallet/refresh-share, /api/user/wallet/share) and removes the provider = 'turnkey' filter from export-key/verify since the column is going away.
  • Migration 0069_keep_230_decom_para: deletes any non-Turnkey rows, drops provider, para_wallet_id, user_share, and renames para_wallets to organization_wallets (with FK + index renames).
  • Drops Para test infrastructure: tests/integration/eip7702-spike.{test.ts,d.ts}, the Para Portal API cleanup branch in tests/e2e/playwright/utils/cleanup.ts, and the seed-test-wallet / fund-test-wallet scripts. Switches transaction-flow + write-contract-workflow skip-conditions from PARA_* to TURNKEY_* env vars.
  • Strips PARA_* env vars from helm values (staging, prod, pr-environment), the e2e GitHub workflow, and the setup-e2e-db action.

Test plan

  • pnpm type-check passes
  • pnpm check introduces no new lint errors vs staging baseline
  • Docker image builds and the container starts cleanly
  • pnpm test:unit passes (in particular tests/unit/sponsored-client.test.ts after the Turnkey adapter swap)
  • pnpm test:integration passes (no Para-touching integration tests remain)
  • E2E happy-path against a fresh wallet (Turnkey-only): create wallet, run a transfer-funds workflow, verify on-chain
  • Migration 0069 runs cleanly against a staging snapshot — confirm organization_wallets table and surviving columns
  • Sponsored (gas-credit) transaction path still signs via the new Turnkey adapter when NEXT_PUBLIC_GAS_SPONSORSHIP_ENABLED=true

…ng code

Para signing was retired in PR #983; this follow-up removes the now-dead
surface area so Turnkey is the only wallet path.

- Drop @getpara/ethers-v6-integration and @getpara/server-sdk from
  package.json + pnpm-lock; delete lib/para/, lib/encryption.ts (Para
  MPC user-share helpers), and Para spec docs.
- Replace the Para-backed viem LocalAccount used by sponsored-client.ts
  with a Turnkey-backed adapter (lib/web3/turnkey-viem-account.ts) that
  signs through the Turnkey API client. Move org-scoped wallet helpers
  out of lib/para/ to lib/web3/wallet-helpers.ts and drop the deprecated
  user-id-keyed lookups.
- Delete Para-only API routes (refresh-share, share) and strip the
  provider="turnkey" filter from export-key/verify since provider is
  going away.
- Drop the Para columns (provider, para_wallet_id, user_share) and
  rename para_wallets -> organization_wallets via migration 0069.
  Update Drizzle schema, relations, and the prometheus / db-metrics
  collectors to drop the Para gauge and provider split.
- Remove Para test infrastructure: delete the eip7702-spike integration
  test, the Para portal cleanup logic in the Playwright e2e helpers,
  and the seed-test-wallet / fund-test-wallet scripts. Update
  transaction-flow + write-contract-workflow tests to skip on missing
  Turnkey env (instead of missing PARA_*).
- Strip PARA_* env vars from staging / prod / pr-environment helm
  values, the e2e GitHub workflow, and the setup-e2e-db action.
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