shapeshift / web

ShapeShift Web
https://app.shapeshift.com
MIT License
159 stars 180 forks source link

feat: add base support #6933

Closed kaladinlight closed 1 week ago

kaladinlight commented 2 weeks ago

Description

Add basic support for base blockchain. (Send/Receive, Balances, Transaction History, Balance History).

This does not include swap support, nft support, or on ramps

Pending: https://github.com/shapeshift/hdwallet/pull/672

Pull Request Type

Issue (if applicable)

closes https://github.com/shapeshift/web/issues/6833

Risk

High Risk PRs Require 2 approvals

Low - does not change any existing behavior and is behind a feature flag

What protocols, transaction types or contract interactions might be affected by this PR?

Testing

Engineering

Operations

Screenshots (if applicable)

image image image image image image image image image

0xApotheosis commented 1 week ago

Been debugging this too @gomesalexandre - some additional info that might help:

kaladinlight commented 1 week ago

First pass - noticed accounts are in an infinite fetching loop after a full cache clear, which isn't the case on develop https://jam.dev/c/785810ab-12f6-4b28-b424-1bb344a48595

This is caused by shapeshift/hdwallet#671 (which isn't present in develop currently since we didn't merge its web fren #6827) which this PR includes. Its web fren actually fixes the infinite loop issue - when the multichain snap isn't installed, trying to derive an account 0+ always derive the same account 0 pubkey (which has activity) meaning we fetch the "next" account number (really 0th) again ad vitam aeternam.

@kaladinlight, ideally #6889 needs to go in before but alternatively, if we don't want this to go first, we can also cherry-pick the <AppContext /> bits separately here.

All of the second pass testing below has been done after merging #6889 locally.

Derp, good catch and will work on getting #6889 in first with this to follow.