Skip to content

Feat: Fuse -> Celo staking migration: modal on Savings and Stake #640

@blueogin

Description

@blueogin

Is your feature request related to a problem? Please describe.

Users with G$ staked on Fuse (GovernanceStakingV2) need to move to Celo Savings. There is no in-app prompt on Savings or Stake when a wallet still has a Fuse governance stake, so migration is easy to miss.

Describe the solution you'd like

On both Savings (/savings) and Stake (/stakes, including GoodDAO Staking and embedded Savings section), detect non-zero stake on old Fuse governance staking and open migration modal immediately.

Desired behavior

  • If old Fuse governance stake > 0:
    • Open migration modal automatically on page load (or once data is loaded)
    • No popover/button click required
  • If stake = 0:
    • Do not show migration modal
  • If wallet disconnects:
    • Close/reset migration modal state

UX notes

  • Keep modal as the main flow container (summary → approve/sign → backend migration status/success)
  • Keep “not now” / close action in modal
  • Avoid repeatedly reopening in same session after user dismisses (unless they re-open manually or refresh behavior is specified)

Acceptance criteria

  • On /savings, modal auto-opens when old Fuse stake is detected
  • On /stakes, modal auto-opens when old Fuse stake is detected
  • No popover is shown for this flow
  • Modal does not open when stake is zero
  • Modal state resets correctly on wallet change/disconnect
  • Existing Savings/Stake flows are not regressed
  • i18n and analytics updated for auto-open behavior (e.g. migration_modal_auto_opened)

Describe alternatives you've considered

  • Popover + CTA before modal: rejected (extra click, easier to ignore)
  • Separate full migration page: rejected as primary UX (modal is faster and contextual)

Additional context

Metadata

Metadata

Type

No type
No fields configured for issues without a type.

Projects

Status

In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions