feat: v7.50.0#16518
Conversation
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> This PR updates account list item designs according to new designs for accounts hierarchy Figma: https://www.figma.com/design/nmBs86I42Cp0T39BlRdX7x/Network-Expansion-Specs?node-id=4107-45412&t=5V9pe1PHnRCxIcXk-4 SRP pills should be removed after introducing accounts hierarchy. ## **Related issues** Fixes: ## **Manual testing steps** 1. Open accounts list ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> <img width="379" alt="Screenshot 2025-05-22 at 16 53 18" src="https://github.com/user-attachments/assets/41d56755-782b-4046-8fcd-b71cba113303" /> ### **After** <!-- [screenshots/recordings] --> <img width="386" alt="Screenshot 2025-05-22 at 16 52 04" src="https://github.com/user-attachments/assets/24d8fac7-6176-4d7d-bff6-6d129a7f87da" /> ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
This PR adds a button in development builds to clear the Transak authentication key so that dev team can QA and develop parts of the app that are skipped when a user is logged in. It is added to the settings page in the same place as ramp activation keys. Video of feature: https://www.loom.com/share/4b764c63e13e46a893242fc6527cb60e settings page displays logged-out state User can log into Transak with email OTP and authentication state persists (even after app closure) use can click button to log out and logged-out state persists Closes duplicate #15959 <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: Pedro Pablo Aste Kompen <wachunei@gmail.com>
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** As we migrate away from Ganache, this is the final remaining work that will enable Anvil to be the default node for running E2E tests across local and CI environments. This PR builds on the recently released [MetaMask Foundry installer package](https://github.com/MetaMask/core/releases/tag/v423.0.0), which provides a consistent way to install Foundry binaries across extension and mobile clients. What this PR does: - Adds support for installing Anvil during the yarn setup process. - Updates CI workflows to include Anvil installation. - Adds a new command: - `yarn anvil` exposes all of Anvil’s CLI options. See more [here](https://book.getfoundry.sh/anvil/reference#options). ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 6. 7. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: OGPoyraz <omergoktugpoyraz@gmail.com>
…zation (#16095) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** Changes were uncovered from this investigation: #15634 This ensures that our list item select the specific data they need (not large objects), and we can utilise WeakMap memoization for better parameter/args memo vs the default LRU memoization from reselect. <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: ## **Manual testing steps** N/A ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> https://www.loom.com/share/e4c2793bb96b40329d767c3f3b4f8df9 ### **After** <!-- [screenshots/recordings] --> https://www.loom.com/share/ea465018b6d446b4a627154a2147a24f ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** Similar to MetaMask/metamask-extension#33180 with variations - Extract gas properties from TransactionMeta. - Continue to pass all request properties to PPOM (Tests are expecting these, and I don't see how this would block the work in this PR) - Use constant names > magic names ## **Related issues** Fixes: https://github.com/MetaMask/MetaMask-planning/issues/5005 ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: OGPoyraz <omergoktugpoyraz@gmail.com>
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** Adds pre-configured and newly added chain ids to profile analytics ## **Related issues** Fixes: MetaMask/MetaMask-planning#4988 ## **Manual testing steps** 1. Start App 1.1 Identity event should fire and include a chain_id_list property with all configured chain ids 2. Add a popular or custom new network 2.1 Identity event should fire and include the previous list with the newly added chain id 3. Remove a network 3.1 Identity event should fire and include the chain_id_list without the removed chain id ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> Segment events: On app start: <img width="402" alt="identity_on_open" src="https://github.com/user-attachments/assets/cbe69e9e-5308-4944-aa57-c8089af2640b" /> Added chain with ID 80094 (Berachain): <img width="411" alt="adding_berachain" src="https://github.com/user-attachments/assets/9d9beab3-22d0-49ef-8ae0-050838f2c3b5" /> Remove chain with ID 10 (Optimism): <img width="415" alt="removing_optimism" src="https://github.com/user-attachments/assets/7ff2d301-498c-4ce4-8b6b-008116e55022" /> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
## **Description** This is an internal PR of this external Margelo performance PR. #16092 -------- Creating new instances of `Intl` is expensive in Hermes. This PR adds simple cache for it. It improves rendering performance of `TokenList` for about 30% because it makes all `TokenListItem` component faster. This also means that there should be less blank spaces when scrolling quickly. It could help also in other places in the app as I replaced all usages of `new Intl` with this new cached version. <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: ## **Manual testing steps** N/A - just make sure app currencies and number formatting looks okay. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** ~250ms average for render of `TokenList` (measured on high end device) <img width="888" alt="Screenshot 2025-06-04 at 21 02 19" src="https://github.com/user-attachments/assets/3b316dbd-8010-49f4-874b-92e6c1ff68df" /> ### **After** ~170ms average for render of `TokenList` (30% improvement) <img width="893" alt="Screenshot 2025-06-04 at 20 59 19" src="https://github.com/user-attachments/assets/80cd18de-327f-47d9-ad8f-789a9bcaebb0" /> ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
## **Description**
Given the introduction of Solana accounts in 7.47.0, we must now be
diligent about address comparison. Solana addresses are case sensitive
so we must remove all cases of `.toLowerCase` AND `.toLowerCaseEquals`
when performing address comparison/lookup. Instead I created a new
function called `areAddressesEqual` (code pasted below) which we can use
to handle this case sensitive comparison use case. I maintained the
lowercase comparison for eth addresses since there are many assumptions
about lower case addresses already in the codebase. In places where
comparison was not needed I opted for the `toFormattedAddress` which
handles the account type case for us. Instead of calling
`safeToChecksumAddress` we should call `toFormattedAddress` which
conditionally checksums the address if the account is EVM. Both of these
function definitions are pasted below.
```js
export function areAddressesEqual(address1: string, address2: string) {
if (!address1 || !address2) {
return false;
}
const isAddress1Eth = isEthAddress(address1);
const isAddress2Eth = isEthAddress(address2);
// If one is an ETH address and the other is not, return false
if (isAddress1Eth !== isAddress2Eth) {
return false;
}
// If both are ETH addresses, do a lowercase comparison
if (isAddress1Eth && isAddress2Eth) {
return address1.toLowerCase() === address2.toLowerCase();
}
// If both are not ETH addresses, do a raw comparison.
// This is important for non-EVM addresses since they are case sensitive.
return address1 === address2;
}
export function toFormattedAddress(address: string) {
return isEthAddress(address) ? toChecksumAddress(address) : address;
}
```
We want to avoid any potential issues that could occurs from comparing
two unique addresses that are equal when lowercased. This could cause
issues such as ...
- incorrect assets being displayed
- sending to the wrong address
- Incorrect transaction data
#### Note
- There were several changes to some of these files that were auto
format changes from prettier. The only real changes in this PR are
swapping out `.toLowerCase` for `toFormattedAddress(address)` and the
equivalent unit test fixes.
### For reviewers
- Ensure that your owned file changes make sense. If a component is EVM
only then we may not need to perform this change.
- Look for other cases of `.toLowerCase` AND `.toLowerCaseEquals` and
ensure that the ones I left in the code make sense.
- I left some that were related to ENS, transactions and asset data.
## **Related issues**
Fixes: #15404
Resolves: https://consensyssoftware.atlassian.net/browse/MUL-239
## **Manual testing steps**
1. Create a wallet
2. create a sol account
3. import an new SRP
4. create a new Sol account
5. perform a send between your accounts
6. ensure that all the data is correct
7. ensure that all the assets being displayed are as expected
8. ensure that the transaction data being shown on the transaction
details screen is correct for each account.
## **Screenshots/Recordings**
There should be no visible changes with this PR.
### **Before**
https://github.com/user-attachments/assets/0fa9230f-f9de-4524-9fce-f7fd11063043
### **After**
https://github.com/user-attachments/assets/02329abe-c945-4a35-97f2-09401a2a0bdb
#### Tested imported account with multiple tokens and NFTS and its
working as expected
<image
src="https://github.com/user-attachments/assets/6b590409-9917-4d24-8187-f945fbbeb39e"
height="500" width="250" />
<image
src="https://github.com/user-attachments/assets/e1f11be1-f2d7-4aac-b260-5c601e9b6290"
height="500" width="250" />
## **Pre-merge author checklist**
- [ ] I’ve followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I’ve included tests if applicable
- [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.
## **Pre-merge reviewer checklist**
- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
This PR updates the KYC forms to submit data to the deposit provider and builds an MVP build quote page with an amount that can be changed. - adjusts the form keys to match Transak API interfaces - adds MVP UX with input to build quote page - passes amount as params to basic info - passes basic info as params to address form - submit combined kyc data to transak as a `patchUser` call via deposit SDK <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
…)" (#16154) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** The e2e pipeline is currently broken on main because of #16110. The purpose of this PR is to revert commit `dc87d4f4fbe8358517a642e77dab2fa0704010c4` so that we have a stable pipeline once again. The passing e2e is here: https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/c832b5b8-9db1-49f6-8a6e-0cbadde3a222 ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** To address MetaMask/MetaMask-planning#4229 , this pr remove the enable automatic security check option in the security settings and hide/disable the check prompt on login This will resultant the minimum version will always been checked. Another pr will remove all the logics and metrics <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> https://github.com/user-attachments/assets/8be6e7dd-46e9-495b-89cc-a2727a3636e9 ### **After** <!-- [screenshots/recordings] --> https://github.com/user-attachments/assets/777fc5d3-fd52-4ada-b8f2-b542d8c5819f ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: hieu-w <maestrokoder@gmail.com> Co-authored-by: hieu-w <hieu@tor.us> Co-authored-by: Chaitanya Potti <chaitanya.potti@gmail.com>
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** 1.4 Update New SRP onboarding flow as per figma design https://www.figma.com/design/pViOUcmjwhEzFsdrwknpNc/Onboarding-redesign?node-id=434-55200&t=wmEoQSF9g9lFtkwp-0 This PR is part 4 of 7 for the new SRP ui update This PR cover - new srp backup ui verification flow <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> https://github.com/user-attachments/assets/37d04ed0-7534-4800-8cbc-228c9add83a6 ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: smgv <gpatra1996@gmail.com> Co-authored-by: Chaitanya Potti <chaitanya.potti@gmail.com> Co-authored-by: hieu-w <hieu@tor.us> Co-authored-by: hieu-w <maestrokoder@gmail.com> Co-authored-by: tommasini <46944231+tommasini@users.noreply.github.com>
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** To address issue MetaMask/MetaMask-planning#4086 , onboarding wizard is disabled from the wallet home screen. Another PR will be added to remove all related logic and state <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> onboarding wizard tour is disabled ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to Wallet Home Screen after wallet creation 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> https://github.com/user-attachments/assets/8be6e7dd-46e9-495b-89cc-a2727a3636e9 ### **After** <!-- [screenshots/recordings] --> https://github.com/user-attachments/assets/fa98c19b-ab94-41ce-8dc9-7f9aa09b2718 ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: Chaitanya Potti <chaitanya.potti@gmail.com> Co-authored-by: hieu-w <maestrokoder@gmail.com> Co-authored-by: hieu-w <hieu@tor.us>
## **Description** Cleanup ticket that moves the notifications js spec into ts. ## **Related issues** Fixes: https://consensyssoftware.atlassian.net/browse/MMQA-648 ## **Manual testing steps** N/A - this just modifies tests ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
## **Description** Upgrade assets-controllers to v68 ## **Related issues** Fixes: ## **Manual testing steps** 1. Import account wiht NFTs and switch to Ethereum/linea networks 2. Go to NFTs tab 3. You should see all your NFTs on popular networks 4. Click on current network 5. It should filter correctly 6. Remove any NFT on any network 7. Re-Import NFT 8. Should be removed and imported successfully ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> This PR aims to convert confirmation e2e test files to TS. ## **Related issues** N/A ## **Manual testing steps** N/A ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
…16104) ## **Description** ### Problem The current `AccountRightButton` component shows network badges that create confusion about dapp permission behavior: 1. **When dapp is connected:** Shows an "Active Network" badge on the account avatar, suggesting only that network can receive requests 2. **Reality:** Connected dapps can send confirmation requests for any permitted network, making the network badge misleading This UX inconsistency could lead users to believe they're limited to interactions on the displayed network only. ### Solution Simplified the `AccountRightButton` behavior to remove misleading network indicators while maintaining core functionality: **New Behavior:** - When no dapp is connected (!selectedAddress): Shows Global Selected Network avatar - When dapp is connected (selectedAddress exists): Shows account avatar only (no network badge) Maintained Functionality: - **Disconnected state:** Clicking opens network selector - **Connected state:** Clicking opens permissions view where users can edit permitted networks - Network management through permissions remains fully functional ## **Related issues** Fixes: MetaMask/MetaMask-planning#5091 ## **Manual testing steps** 1. Goto the browser tab 2. Goto any dapp and observe that the network avatar is still their and clickable 3. When you connect/give permissions to the dapp, the account avatar still shows and works as usual, but the network badge doesn't show anymore. ## **Screenshots/Recordings** https://github.com/user-attachments/assets/589d195e-eb6f-4889-977b-c633d75a0480 ### **Before** `-` ### **After** `-` ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [x] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [x] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** This PR extracts `getMultichainBlockExplorer` to its own hook to become reusable. <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to wallet account action 2. Click on the block explorer link. 3. See that it is working like normal. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** This PR adds the new account details behind a feature flag. Changes: 1. Add EditAccountName and ShareAddress components 2. Nav/App has been updated to add the new bottom sheets. 3. `getMultichainBlockExplorer` has been added to `app/core/Multichain/networks.ts` 4. The new multichain account details is behind a feature flag in `app/components/UI/EvmAccountSelectorList/EvmAccountSelectorList.tsx` <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 5. What is the improvement/solution? --> ## **Related issues** Depends on: #15722 ## **Manual testing steps** 1. Manually enable the remote flag 2. Go to account list 6. Click on the 3 dots menu. 7. See the new account details. 8. Click on the address to see the shareable address component. 9. Click on the name to change name. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> https://github.com/user-attachments/assets/1752700b-fb99-494b-b066-8c699bf5e18a ### **After** https://github.com/user-attachments/assets/2ad59f77-89fa-49b1-bb8f-a493f1ed93b6 <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
…#15943) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** On Android, SelectComponent scrollview does not scroll to the selected item automatically when the modal opens. This PR is copying the behaviour on iOS ## **Related issues** Fixes: #15942 ## **Manual testing steps** 1. On Android, go to settings -> general -> currency conversion 2. Open the dropdown 3. Select a currency that's lower down the list, the modal should close after selected 4. Re-open the modal 5. should see the selected currency in view ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before**  ### **After**  ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [x] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [x] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
## **Description** This PR changes the account list item to display network avatars. This change supports a more network-centric approach to account selection, which is more valuable in a multichain context. Here is the [Figma](https://www.figma.com/design/MlBUrNnIXlftX4TSjqiUYg/Core-Components?m=auto&node-id=3172-12532&t=kmK0k3E8p5Y6azvO-1) ### Implementation - Account List Network Indicators: The account list now shows the active networks by account using the new `AccountNetworkIndicator` component - Smart Network Activity Sync: Added a new `useAccountsWithNetworkActivitySync` hook that centralizes network activity fetching logic for: - First load (only once per app session, if basic functionality is enabled) - Transaction completion (confirmed transactions) - Manual triggers (e.g., after account creation, import etc) - Improved Multichain Experience: Integrated network indicators into both `CaipAccountSelectorList` and `EvmAccountSelectorList` components to show users which networks have activity for each account ### When the data is refreshed - On first load - On transaction confirmed - On SRP import - On Private key import ### Key Components Added/Modified - AccountNetworkIndicator: New component that displays network avatars for accounts with transaction activity - useAccountsWithNetworkActivitySync: New hook for managing network activity data synchronization ## **Related issues** Feature: [#4057](MetaMask/MetaMask-planning#4057) ## **Manual testing steps** ### On First Load 1. Go to this page wallet home screen 2. Click on account picker at the top 3. Observe that account selector now have network icons sorted by aggregated network balance ### Import SRP 1. import a address with activity using your SRP 2. Observe that the correct networks are shown ### Import Private Key 1. import a address with activity using your private key 2. Observe that the correct networks are shown ### Send a transaction to a network that hasn't had transaction before 1. Find a fresh address with no activity 2. Observe that there are no networks avatars in the account list 3. Send a transaction to this new address 4. Observe the new network avatars ## **Screenshots/Recordings** ### Recording | Before | After | |:---:|:---:| ||| ### Screenshot | Before | After | |:---:|:---:| ||| ### Dapp Permissions <img src="https://github.com/user-attachments/assets/92119f84-eb85-4caf-982b-dce83a80f5c6" width=350 > ### **Before** NA ### **After** NA ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [x] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [x] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> This PR addresses multiple E2E test failures across the MetaMask mobile app by fixing selector mismatches, UI flow changes, and platform-specific compatibility issues. The fixes ensure tests work reliably across both iOS and Android platforms. ### Root Issues Identified - Confirmation UI Migration: The app had transitioned to a new confirmation UI by default, but tests were still using selectors from the legacy confirmation interface - Terms of Use Flow Changes: The Terms of Use modal now appears earlier in the onboarding flow, blocking access to subsequent screens - Platform-Specific Selector Conflicts: Cross-platform differences in checkbox and button selectors causing test failures - Feature Flag Conflicts: Tests needed to force specific UI states for consistent behavior ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** Mandatory modal are dismisaable after using the BottomSheet Modal. Mandatory modal for terms of use are not suppose to be able to be dismissed This PR fix the mandatory modal to be not dismissable <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: #16186 ## **Manual testing steps** 1. Go to swap page 2. Generate a quote 3. Verify that clicking Terms & Conditions opens a web view with the T&Cs content ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> https://github.com/user-attachments/assets/cef8e499-a7c0-43bf-8712-d53c336a84cc ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [x] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [x] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** Recreated version of #16110 ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** This PR fixes 2 issues, network change event not reflecting and invalid network being shown on personal_sign, and handleSendTransaction. Improved the code to better manage getting the current network with support for the latest Per-DApp Selected changes. Additionally when personal_sign or other activity like handleSendTransaction where still using old globalNetworkSelector and for this case we added a check isPerDappSelectedNetworkEnabled and use other selectors when true and fallback to old global network selector if the flag is not yet activated. Also brought some minimal improvements to the code for better readability, reduce code duplicity, etc. <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: #15240 ## **Manual testing steps** Please follow the instructions in the related [github issue](#15240) ## **Screenshots/Recordings** 1st Issue, personal sign showing wrong network after changing the selected network from the Dapp. | Before | After (with multichain flags) | |--------------|--------------| | <video src="https://github.com/user-attachments/assets/d02fcf6e-d20f-4439-a18e-7638637f54d7"> |<video alt="as" src="https://github.com/user-attachments/assets/d6b45d57-5abf-4119-ab5a-bd2dc9e2bc5f"> | Currently failing, switches network but does not show personal_sign after | 2nd issue, transaction preview shows wrong network selected | Before | After (with multichain flags) | |--------------|--------------| | Not recorded | <video src="https://github.com/user-attachments/assets/8b3085d9-b171-4106-a1bd-ddc9d0cc4784"> | ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: metamaskbot <metamaskbot@users.noreply.github.com> Co-authored-by: tommasini <tommasini15@gmail.com>
…le. (#16150) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** This enables the per dapp selected network feature flag. And updates the related unit tests. These files have failing tests need to be fix on main: modified: app/components/UI/PermissionsSummary/PermissionsSummary.test.tsx (snaps updated by Eric) modified: app/components/UI/TransactionElement/TransactionDetails/index.test.tsx (snaps updated by Eric) modified: app/components/Views/AccountPermissions/AccountPermissions.test.tsx (fixed by Eric) modified: app/components/Views/confirmations/components/confirm/confirm-component.test.tsx (fixed by Goktug) modified: app/components/Views/confirmations/components/info-root/info-root.test.tsx (fixed by Goktug) modified: app/components/Views/confirmations/components/info/switch-account-type/switch-account-type.test.tsx (fixed by Goktug) modified: app/components/Views/confirmations/legacy/SendFlow/Confirm/index.test.tsx (fixed by Goktug) <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: EtherWizard33 <etherwizard22@gmail.com> Co-authored-by: OGPoyraz <omergoktugpoyraz@gmail.com> Co-authored-by: NidhiKJha <menidhikjha@gmail.com>
… test execution (#16208) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: https://consensys.slack.com/archives/C02U025CVU4/p1749486101994769 ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
#16098) In this PR, the permissions menu total fiat balance always shows the total for the popular networks regardless of the currently selected network for the dapp, the globally selected network, and the token filter value ## **Related issues** ~Fixes: #15639 ## **Manual testing steps** 1. Connect to a dapp 2. In the dapp select a network other than the globally selected one 3. Check the account balance in the Permissions menu, it should render aggregated balance ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** https://github.com/user-attachments/assets/9c42c3b7-6fb5-461e-8e23-ff61e44ebe93 ### **After** https://github.com/user-attachments/assets/299da2da-e75e-4504-9da2-9f2786cebf5c ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: Alex Donesky <adonesky@gmail.com> Co-authored-by: ffmcgee <joao.carlos@consensys.net> Co-authored-by: metamaskbot <metamaskbot@users.noreply.github.com> Co-authored-by: tommasini <46944231+tommasini@users.noreply.github.com>
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** After a user completes their KYC, we want to display a screen that polls for the KYC status and shows either an error or a success screen <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: https://consensyssoftware.atlassian.net/browse/RAMPS-2477?atlOrigin=eyJpIjoiYzFmNjE1Mjg0YTI5NGY1OTljZTIyMGZiNTVhODA1NDkiLCJwIjoiaiJ9 ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** https://github.com/user-attachments/assets/227c82d0-6601-4941-b45e-e162287000cc <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: George Weiler <george.weiler@consensys.net> Co-authored-by: George Weiler <georgejweiler@gmail.com>
|
Caution Review the following alerts detected in dependencies. According to your organization's Security Policy, you must resolve all "Block" alerts before proceeding. It is recommended to resolve "Warn" alerts too. Learn more about Socket for GitHub.
|
…LD flag key (#16910) - fix: cp-7.50.0 removed local flag and regression on LD flag key (#16903) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** Regression on LD flag and simplified to remove bug to ensure Contentful Banners are displayed <img width="285" alt="Screenshot 2025-07-03 at 12 59 12 PM" src="https://github.com/user-attachments/assets/7b41785c-b5ec-4f70-842b-c58b512a50f6" /> <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: metamaskbot <metamaskbot@users.noreply.github.com> [b93bd5b](b93bd5b) --------- Co-authored-by: Marci McBride <mcbridemarci@users.noreply.github.com> Co-authored-by: metamaskbot <metamaskbot@users.noreply.github.com> Co-authored-by: Marci McBride <mcbridemarci@gmail.com>
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## stable #16518 +/- ##
=========================================
Coverage ? 72.14%
=========================================
Files ? 2663
Lines ? 57745
Branches ? 9028
=========================================
Hits ? 41658
Misses ? 13458
Partials ? 2629 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** cp #16916 <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
…system (#16967) - fix: cp-7.50.0 align sdk connection with permission system (#16460) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** This PR updates the SDK connection flow to consistently use the latest permissions system UI, removing legacy components and streamlining the connection experience. - Removed the legacy `AccountConnectSingle` component in favor of using the newer `PermissionsSummary` component consistently - Eliminated the conditional rendering between old and new UI based on `isSdkUrlUnknown` - Simplified icon handling and URL state management - Improved callback handling with proper memoization using `useCallback` - Consolidated connection confirmation logic into a single `handleConfirm` function - Use channelIdOrHostname to fetch and store permissions instead of just hostname - Fixed lots of Wallet Connect issues as part of this PR those addresses in the videos mainly, apart from the minor UI change ## **Related issues** - Depends on #14602 ## **Manual testing steps** - SDK connection requests from dapps - WalletConnect connection flows - Permission granting for both known and unknown origins - Network switching during connection - Multiple account selection flows ## **Screenshots/Recordings** We first want to alignt eh AccountConnect.tsx component to the latest permission UI. | Before | After | |--------------|--------------| |  |  | ## Additional recordings Switching networks with pre-approved networks (addEthereumNetwork + SwitchEthereumNetwork) VS only SwitchEthereumNetwork | Without pre-approved networks | with pre-approved networks | |--------------|--------------| | <video src="https://github.com/user-attachments/assets/0e0eb6ec-7a89-441c-83be-fc634bb0e89a" /> | <video src="https://github.com/user-attachments/assets/1f6943ee-13f5-4f4c-b902-0594c278c1de" /> | | WC Session restore on cold start | |--------------| | <video src="https://github.com/user-attachments/assets/8e8967cb-1241-4040-9c53-de259076ff0b" /> | <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [x] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [x] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: Edward Penta <eddie.penta@consensys.net> [724c3ea](724c3ea) --------- Co-authored-by: Javier Ribó <javi.ribo@consensys.net> Co-authored-by: Edward Penta <eddie.penta@consensys.net>
….11.0 (#16981) - chore: cp-7.50.0 bump controller utils to version 11.11.0 (#16968) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** Bump controller utils to v^11.11.0 This is a copy of this external contribution PR - https://github.com/MetaMask/metamask-mobile/pull/16950/files <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. [2697dea](2697dea) Co-authored-by: tommasini <46944231+tommasini@users.noreply.github.com>
#16993) - fix: cp-7.50.0 fix bridge account selection (#16988) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** Fixes bug where destination account selector broke the bridge UI after clearing the default selection. <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Related issues** Fixes: #16983 ## **Manual testing steps** 1. Go to Bridge 2. Select Solana to EVM or vice versa 3. Clear default account and select new account ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** https://github.com/user-attachments/assets/ee736a5e-0b99-445a-bf5a-856031c2ccbb <!-- [screenshots/recordings] --> ### **After** https://github.com/user-attachments/assets/002af379-f00b-4fc8-a9c9-0528aea6e35f <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. [4daee83](4daee83) Co-authored-by: Bryan Fullam <bryan.fullam@consensys.net>
…m acc from solana acc (#17028) - fix: cp-7.50.0 crash app when selecting evm acc from solana acc (#17019) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** The `CollectibleContracts` component was receiving non-EVM data, and it is not ready for it. <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Changelog** <!-- If this PR is not End-User-Facing and should not show up in the CHANGELOG, you can choose to either: 1. Write `CHANGELOG entry: null` 2. Label with `no-changelog` If this PR is End-User-Facing, please write a short User-Facing description in the past tense like: `CHANGELOG entry: Added a new tab for users to see their NFTs` `CHANGELOG entry: Fixed a bug that was causing some NFTs to flicker` (This helps the Release Engineer do their job more quickly and accurately) --> CHANGELOG entry: ## **Related issues** Fixes: #17016 ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** https://github.com/user-attachments/assets/bd2455f6-3259-4e5b-ae89-607350f8d7f6 <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. [bc588f2](bc588f2) Co-authored-by: tommasini <46944231+tommasini@users.noreply.github.com>
This PR updates the change log for 7.50.0 and generates the test plan here [commit.csv](https://github.com/MetaMask/metamask-mobile/blob/chore/7.50.0-Changelog/commits.csv) --------- Co-authored-by: metamaskbot <metamaskbot@users.noreply.github.com> Co-authored-by: tommasini <46944231+tommasini@users.noreply.github.com> Co-authored-by: tommasini <tommasini15@gmail.com>
|
|



🚀 v7.50.0 Testing & Release Quality Process
Hi Team,
As part of our new MetaMask Release Quality Process, here’s a quick overview of the key processes, testing strategies, and milestones to ensure a smooth and high-quality deployment.
📋 Key Processes
Testing Strategy
Conduct regression and exploratory testing for your functional areas, including automated and manual tests for critical workflows.
Focus on exploratory testing across the wallet, prioritize high-impact areas, and triage any Sentry errors found during testing.
Validate new functionalities and provide feedback to support release monitoring.
GitHub Signoff
Issue Resolution
Cherry-Picking Criteria
🗓️ Timeline and Milestones
✅ Signoff Checklist
Each team is responsible for signing off via GitHub. Use the checkbox below to track signoff completion:
Team sign-off checklist
This process is a major step forward in ensuring release stability and quality. Let’s stay aligned and make this release a success! 🚀
Feel free to reach out if you have questions or need clarification.
Many thanks in advance
Reference
https://docs.google.com/spreadsheets/d/1tsoodlAlyvEUpkkcNcbZ4PM9HuC9cEM80RZeoVv5OCQ/edit?gid=1370936236#gid=1370936236