MetaMask / MetaMask/metamask-extension
Make SwapsController support multichain
- Dominant language
- TypeScript
- Stars
- 13.2k
- Forks
- 5.6k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 451
Description
### What is this about?
Make SwapsController support multichain.
The swaps controller currently relies upon the "globally selected network". It should be refactored such that each chain interaction is made by methods that include a networkClientId parameter, which determines which network client/chain is used.
### Scenario
_No response_
### Design
_No response_
### Technical Details
N/A
### Threat Modeling Framework
N/A
### Acceptance Criteria
- The controller no longer relies upon the globally selected network.
- All operations involving a chain specify a `networkClientId`.
### Stakeholder review needed before the work gets merged
- [X] 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_
Contributor guide
Assessment
This issue has not been assessed yet.