Skip to content

Prevent failed XDC wallet initialization from breaking Celo top-ups #582

Open

Description

@L03TJ3

After deployment, XdcAdminWallet failed to initialize because its RPC returned a rate-limit error. Subsequent Celo /verify/topWallet requests failed with:

Cannot read properties of undefined (reading 'methods')

Following #575, the server continues running after wallet initialization fails. However, MultiWallet.isConnected checks all non-Base wallets, and Web3Wallet.isConnected assumes identityContract exists. One uninitialized wallet therefore breaks the entire check.

Requested fix

  • Handle an uninitialized wallet without crashing the shared verification check.
  • Preserve existing behavior: a positive verification result on any participating Identity chain is sufficient. An unavailable wallet must never count as verified.
  • Keep a diagnostic for the unavailable wallet. Do not bypass verification.
    Focused tests
  • XDC is uninitialized and Celo positively verifies the account: the check succeeds.
  • XDC is uninitialized and no other wallet positively verifies the account: the check does not authorize a top-up.
    Keep this minimal: missing-contract handling and regression tests only. No RPC-provider refactor or automatic retry system. Add XDC RPC failover for identifier verification #581 addresses signature-verification RPC fallback, not this wallet-initialization path

Activity

  1. Copilot commented on Oct 27, 2026

    Copilot
    Contributor

    The agent encountered an error and was unable to start working on this issue: The selected model isn't available. It may have been disabled by your organization or enterprise Copilot policy, or it may no longer be supported. Choose a different model or use Auto, then try again. (Request id: CBF2:94943:1421EA:1E0DEE:6AE0C86A)

  2. assigned and unassigned on Oct 27, 2026
  3. Copilot commented on Oct 27, 2026

    Copilot
    Contributor

    The agent encountered an error and was unable to start working on this issue: The selected model isn't available. It may have been disabled by your organization or enterprise Copilot policy, or it may no longer be supported. Choose a different model or use Auto, then try again. (Request id: AA28:2DFF8B:159FC2:1FFFDC:6AE0C8E9)

  4. assigned and unassigned on Oct 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions