feat: remove Porto wallet support (Ithaca sunset)#800
Conversation
Porto (Ithaca's crypto-account platform) is being sunset; the connector will stop working after 2026-07-24. Remove the Porto wagmi connector, its public `porto` config option on EthereumProviderConfig / createDefaultWagmiConfig, all provider wiring, the wallet icon + tag, and the playground usage/dependency. Released as a minor bump of @lifi/widget-provider-ethereum (4.0.0 -> 4.1.0) plus a patch for @lifi/wallet-management. Ref: EMB-458
🦋 Changeset detectedLatest commit: b011a8f The changes in this PR will be included in the next version bump. This PR includes changesets to release 19 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
✅ E2E Dev Smoke — passing
4 passed · 0 failed · 0 skipped · 13s |
E2E Examples — all passedAll examples passed in the latest run. |
E2E Playground resultsDetails
📥 Download full HTML report (open the run → Artifacts → |
🔍 QA Review — EMB-458🧠 What this ticket doesRemoves all Porto wallet support from the widget monorepo following Ithaca's announcement that they are sunsetting Porto on 2026-07-24. Rather than shipping a wallet option that is about to break, this PR proactively deletes the
📋 Ticket SummaryRemove Porto wallet support (Ithaca sunset) Acceptance Criteria:
🏷️ PR Naming — ✅ Pass
🔎 Ticket Discoverability — ✅ Pass
✅ Ticket Coverage — HighAll widget-side Porto surfaces identified in the ticket description were addressed: connector file, provider wiring (
|
| # | Severity | Type | Issue |
|---|---|---|---|
| 1 | 🟢 Low | Completeness | lifinance/types PR #538 closed without merge — porto.svg still live |
🟢 [Low] lifinance/types PR #538 closed without merging — porto.svg orphaned
PR #538 (chore: remove Porto wallet icon) against lifinance/types was closed on 2026-06-22 without being merged. The file src/assets/icons/wallets/porto.svg is still present and publicly hosted at lifinance.github.io/types/src/assets/icons/wallets/porto.svg. The widget's icons.ts no longer references this URL, so there is no user-visible regression from this PR alone. However:
- The ticket's exit criteria explicitly requires this deletion.
- A future connector could accidentally re-reference the URL.
- The ticket cannot be marked Done with this step outstanding.
Suggestion: Re-open PR #538 or open a new PR against lifinance/types to delete src/assets/icons/wallets/porto.svg, link it to EMB-458, and ensure it is merged before closing the ticket.
🧪 Test Coverage
| Layer | Score | Files reviewed |
|---|---|---|
| Unit (Vitest) | Good | No unit tests needed — purely subtractive change; no new logic introduced; no existing Porto-specific tests existed to update |
| E2e (Playwright) | Good | E2E Playground: 158/158 passed; E2E Dev Smoke: 4/4 passed; E2E Examples: all passed |
Gaps: None. The removal is validated by the green E2E suite. The knip:check CI gate guards against accidental re-introduction of the porto package. No positive unit tests for Porto existed before this PR (Porto was an opt-in connector, not tested at unit level), so there are no test files to clean up.
ℹ️ e2e/ folder present — Playwright coverage will apply once the suite is active.
🔗 Downstream Impact
Blocks: None (no blocking relations on EMB-458).
Companion PRs — must merge to complete the ticket:
| Repo | PR | Status | Required before closing EMB-458? |
|---|---|---|---|
| jumperexchange/jumper-exchange | #2968 | Open | ✅ Yes — removes porto: true from Jumper |
| lifinance/types | #538 | ❌ Closed without merge | ✅ Yes — new PR needed to delete porto.svg |
QA Agent — 2026-06-22
There was a problem hiding this comment.
QA Pass — Porto removal is complete and correct across all widget-side surfaces. One advisory: re-open lifinance/types PR #538 before closing EMB-458.
Which Linear task is linked to this PR?
EMB-458
Why was it implemented this way?
Ithaca is sunsetting Porto — users must move funds out by 2026-07-24, after which the connector stops being useful. Rather than ship a wallet option that's about to break, this removes Porto entirely:
createPortoConnectorconnector.porto?option fromEthereumProviderConfigandcreateDefaultWagmiConfig, plus its wiring inEthereumBaseProvider/EthereumProviderValues.xyz.ithaca.porto) and itsGetStartedtag in@lifi/wallet-management.portodevDependency and theknip.jsonignore entry.portois also an optional peer of@wagmi/connectors, so it remains in the lockfile transitively, but nothing imports it now that the connector is gone.Release: shipped as a minor changeset for
@lifi/widget-provider-ethereum(4.0.0 → 4.1.0) + a patch for@lifi/wallet-management. Removing theportofield is technically a breaking type change, but is released as minor per team decision. The flagship@lifi/widgetdoes not depend on@lifi/widget-provider-ethereum, so it is unaffected.Visual showcase (Screenshots or Videos)
Porto no longer appears in the playground wallet list. No UI changes beyond the removed entry.
Checklist before requesting a review