Skip to content

Gracefully handle when a custom RPC endpoint is degraded or becomes unavailable #34214

@mcmire

Description

@mcmire

What is this about?

Some users face issues interacting with networks, and we've noticed a tendency for them to blame us for being buggy. In some cases, it is not MetaMask that is at fault, but a custom RPC endpoint they forgot they added. We need to correct this public perception.

Today, we show a modal when the wallet is unable to connect to an RPC endpoint upon startup, but 1) the timeout is very long and 2) we do not do this if the user simply switches to a network.

If the user switches to a custom RPC endpoint and it is slow to respond, we need to inform the user about it — emphasizing that this is not a built-in, officially supported endpoint — and offer them to switch to a new endpoint. Similarly for when a custom RPC endpoint is completely unavailable.

We will have to collaborate with Wallet UX on this so that the experience we add meshes well with the existing experiences.

We will also have to finetune this behavior so that the modal does not appear too many times in development (as a slow computer can trigger the "degraded" event).

Scenario

No response

Design

No response

Technical Details

No response

Threat Modeling Framework

No response

Acceptance Criteria

No response

Stakeholder review needed before the work gets merged

  • Engineering (needed in most cases)
  • Design
  • Product
  • QA (automation tests are required to pass before merging PRs but not all changes are covered by automation tests - please review if QA is needed beyond automation tests)
  • Security
  • Legal
  • Marketing
  • Management (please specify)
  • Other (please specify)

References

No response

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions