Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version v12.6.0 #27996

Open
wants to merge 218 commits into
base: master
Choose a base branch
from
Open

Version v12.6.0 #27996

wants to merge 218 commits into from

Conversation

hjetpoluru
Copy link
Contributor

@hjetpoluru hjetpoluru commented Oct 21, 2024

Description

Version v12.6.0

Open in GitHub Codespaces

pedronfigueiredo and others added 30 commits September 26, 2024 09:29
<!--
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**

Includes e2e test.

<!--
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?
-->

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/26906?quickstart=1)

## **Related issues**

Fixes: MetaMask/MetaMask-planning#3004

## **Manual testing steps**

1. Go to
https://etherscan.io/token/0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599#writeContract
2. Connect your wallet
3. Go to approve
4. Input an address under spender
5. Input 0 under value
6. Click write
7. Notice MM confirmation


## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->
<img width="472" alt="Screenshot 2024-09-04 at 17 00 32"
src="https://github.com/user-attachments/assets/6520ca14-068b-4fff-a4e3-7783c5fac60b">

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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: Priya Narayanaswamy <priya.narayanaswamy@consensys.net>
## **Description**

This PR simplifies account syncing event names

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27413?quickstart=1)

## **Related issues**

Fixes:
[NOTIFY-1166](https://consensyssoftware.atlassian.net/browse/NOTIFY-1166)

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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.


[NOTIFY-1166]:
https://consensyssoftware.atlassian.net/browse/NOTIFY-1166?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
…7205)

<!--
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 aims to apply fixes and improvements to the Alert System in
general and specific alerts such as SIWE and contract interaction.


**Fixes:**

1- Display a more generic and toned-down message on the friction modal.

2- Show alerts before the Confirm Alert Modal (final friction modal)
when there is a danger alert.

3- Fixed CTA button when the alert has not been acknowledged.


**Fixes from UX QA feedback**

[Figma](https://www.figma.com/design/gcwF9smHsgvFWQK83lT5UU/Confirmation-redesign-V4?node-id=3293-2791&t=fX0ohLSzAelDEDvM-1)
- Change the Danger icon to `security-search` icon when button is
`Review Alerts` or `Review Alert` - ✔️
- Remove blockaid dedicated alert modal - ✔️
- Remove the “tooltip icon” whenever an alert is present -
✔️
- Always display a critical alert first when a critical alert is
present:
  - Inline alerts - ✔️
  - Multiple Alert Modal - ✔️
- Disable the CTA "Review Alerts" whenever a blocking alert is present -
✔️
- Add "Got it" for blocking alerts. (this button will be responsible for
closing the modal) - ✔️
- Remove the close `X` button - ✔️


<!--
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?
-->

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27205?quickstart=1)

## **Related issues**

Fixes: #27132
#27147
#27118

## **Manual testing steps**

**Case 1**

1. Go to test dapp
2. Don't have funds
3. Trigger malicious mint erc20 on Sepolia
4. Click on Review alerts

**Case 2**
1. Go to test dapp
2. Trigger malicious contract interaction on Ethereum
3. Click on Review alerts

**Case 3**
1. Go to test dapp
2. Click on Sign In With Ethereum - Bad Domain
3. Click Confirm

**Case 4**
1. Deploy an ERC721 contract from the test dapp
2. Trigger a transaction with a nonce +1, so it's not confirmed
3. Now trigger a Mint
4. Click on the alerts (there are 2)
5. Navigate to the 2nd alert
6. Click got it --> MM broke

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->



![image](https://github.com/user-attachments/assets/213ad2ed-2556-443e-905b-17b92ac08b56)


[alert-fix.webm](https://github.com/user-attachments/assets/f8d42db8-cc7d-448b-ad8f-20a789829122)


[mint-without-funds.webm](https://github.com/user-attachments/assets/5e913290-79af-4432-b30a-b3a09891fba9)

[Contract Interaction and
Alerts.webm](https://github.com/user-attachments/assets/929a79da-eefc-44d8-b350-a165ff92300f)


### **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
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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**

When no token detail decimals are found in the DataTree showing an
amount, we should use the verifiedContract token details passed from
TypedSignInfo component. This PR applies this and adds an "Incomplete
Asset Displayed" when getTokenStandardAndDetails fails to return details
of a token.

also adds support for passing null decimals to fetchErc20Decimals

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27328?quickstart=1)

## **Related issues**

Fixes: #27243

## **Manual testing steps**

1. Go to test-dapp
2. Test Permit

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<img width="320"
src="https://github.com/user-attachments/assets/b31f0964-9602-4284-bcf0-3fe1a49c7703">

### **After**

<img width="320"
src="https://github.com/user-attachments/assets/c07eef49-ee77-4bb6-9da4-0dd45177f7ca">


## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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?
-->

- Adds `Signature` traces
- Wraps `newUnsignedTypedMessage` in a utility function, adds end of
`Middleware` trace and `Signature` trace after hash is returned from
background.

Note that this PR still using a preview will be updated once core is
released.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/26967?quickstart=1)

## **Related issues**

Fixes: MetaMask/MetaMask-planning#2902

## **Manual testing steps**

No QA needed.

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

An example Sentry trace for `Signature`
https://metamask.sentry.io/performance/trace/53446691f4d44d40a5f9de82f1cebd05/?fov=0%2C4381.00004196167&node=txn-d4053774d6c2495b8564fdce1fac8bec&pageEnd&pageStart&project=273496&source=traces&statsPeriod=15m&timestamp=1725629491.052


### **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
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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: Vinicius Stevam <45455812+vinistevam@users.noreply.github.com>
#26985)

… that opt-in


<!--
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 makes these redesigned screens available for users that opt into
redesigned transaction screens in the experimental settings page.

<!--
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?
-->

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/26985?quickstart=1)

## **Related issues**

Fixes: MetaMask/MetaMask-planning#3246

## **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
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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 removes the duplication introduced in
https://github.com/MetaMask/metamask-extension/pull/26967/files#diff-7ae45ad102eab3b6d7e7896acd08c427a9b25b346470d7bc6507b6481575d519R354-R355

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27421?quickstart=1)

## **Related issues**

Fixes: `develop` branch 

## **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
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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 PR bumps `@metamask/profile-sync-controller` to `v0.9.3`.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27415?quickstart=1)

## **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
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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: MetaMask Bot <metamaskbot@users.noreply.github.com>
Co-authored-by: Ariella Vu <20778143+digiwand@users.noreply.github.com>
This PR is to add editing flow while switching networks via dapp
This PR also includes the connections flow which includes editing


## **Related issues**

Fixes: 
1. MetaMask/MetaMask-planning#2683
2. MetaMask/MetaMask-planning#2684
3. MetaMask/MetaMask-planning#2697
4. MetaMask/MetaMask-planning#2698
5. MetaMask/MetaMask-planning#2663

## **Manual testing steps**

1. run the extension with CHAIN_PERMISSIONS flag
2. Connect to a dapp 
3. Switch network via metamask
6. toast should show up
7. Then click on edit permissions, it should route to new permissions
screen
8. We have edit networks and edit accounts modal there

## **Screenshots/Recordings**


### **Before**

NA
### **After**



https://github.com/user-attachments/assets/a9dbaecf-c96b-485c-b639-f50cbe30317c


https://github.com/user-attachments/assets/8638bb1f-3739-4a2b-84ae-dca24f8abe6d



## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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 <adonesky@gmail.com>
Co-authored-by: Jiexi Luan <jiexiluan@gmail.com>
Fixes this Warning introduced in #26426:

```
ramps-card.js:150 Warning: Invalid argument supplied to oneOfType. Expected an array of check functions, but received undefined at index 1.
```
#27401)

… that opt in


<!--
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 makes both redesigned screens available for users that opt into
redesigned transaction screens in the experimental settings page.

<!--
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?
-->

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27401?quickstart=1)

## **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
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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**

As part of #26986, the wrapper component for "Speed" [was changed from
ConfirmInfoRow to
ConfirmInfoAlertRow](https://github.com/MetaMask/metamask-extension/pull/26986/files#diff-dca84a26976b31828773277690e34b17f2120e4b8f821b2900f28b4f3c452c98R85).
This change means that the `ConfirmInfoRowVariant.Default` applied to
this component changes the color to blue.

To revert that aesthetic change, this PR removes said variant.

<!--
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?
-->

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27416?quickstart=1)

## **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] -->

<img width="472" alt="Screenshot 2024-09-26 at 10 57 44"
src="https://github.com/user-attachments/assets/fa30a9a2-2e4f-40e9-9aca-2484a8c0b611">


### **After**

<!-- [screenshots/recordings] -->

<img width="472" alt="Screenshot 2024-09-26 at 10 56 03"
src="https://github.com/user-attachments/assets/0d5ab222-fa44-4f4b-ad4e-f8a18fd0571a">


## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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.
…should queue send tx after switch network confirmation and transaction should target the correct network after switch is confirmed` (#27352)

<!--
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**
There is a race condition with window management that makes this test
fail quite often. The test performs these actions and there are
different behaviors happening, depending on the build:

1. Action: trigger a network switch -> this opens a new dialog window
(we have 4)
2. Action: trigger a send -> we are still with the network switch window
open
3. Action: we click switch network -> this closes the dialog (now we
have 3 windows for a brief moment - if this is fast, like in webpack, it
fails with the error `Error: waitUntilXWindowHandles timed out polling
window handles. Expected: 3, Actual: 4`)
4. A new dialog is open automatically -> now we have 4 windows again,
but the dialog handle ids are different
5. Sometimes this dialog is closed and then a new one is open
6. We switch to the dialog, but often the context is invalidated as we
are switching to either 1 or 4 or 5

Extra Notes:
This PR fixes the flakiness of waiting for 3 windows by adding a delay.
This won't fix the root cause of the 2 new identified issues, but after
re-runs has proven to stabilize the test

- In Webpack, sometimes the dialog for the transaction never appears,
and the wallet get's in a frozen state. The issue is on the wallet
level, see #27414
- see issue #27360
Since there is only a brief moment for having 3 windows, waiting for 3
windows and then proceeding also makes the test flaky, so it's not
effective.



![Screenshot from 2024-09-26
11-26-34](https://github.com/user-attachments/assets/d4f7684f-6fc6-481f-9d47-a65656c8989a)


[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27352?quickstart=1)

## **Related issues**

Fixes: #27387

## **Manual testing steps**

1. Check ci
2. Run test locally `yarn test:e2e:single
test/e2e/tests/request-queuing/dapp1-switch-dapp2-send.spec.js
--browser=chrome`

## **Screenshots/Recordings**

Problem in FF and Webpack, see how popup is open and closed, and then a
new popup is open with the transaction.



https://github.com/user-attachments/assets/c17ff7bd-6b1d-4517-b33f-95f7ac6d3120


Problem in Webpack, where tx does not open after the change networks


https://github.com/user-attachments/assets/2b626159-ec37-4b3c-9c91-80ab4011f751





Problem Webpack, see how popup is open and closed, and then a new popup
is open with the transaction.



https://github.com/user-attachments/assets/8165b3e7-2ed4-4704-91dc-82776edb0bd8




<!-- 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
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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.
…w` (#27417)

<!--
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**
Before clicking Confirm, we wait until the transaction gas and amount
are loaded to avoid any possible rerender.
We also login with balance validation, so we can get rid of the initial
delay.


https://app.circleci.com/pipelines/github/MetaMask/metamask-extension/102392/workflows/75210923-91d6-44cc-b224-72f3f530dbb2/jobs/3815538/tests


[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27417?quickstart=1)

## **Related issues**

Fixes: #27418

## **Manual testing steps**

1. Check ci
2. Run test locally `yarn test:e2e:single
test/e2e/tests/responsive-ui/metamask-responsive-ui.spec.js
--browser=chrome --leave-running=true`

## **Screenshots/Recordings**

![Screenshot from 2024-09-26
12-18-20](https://github.com/user-attachments/assets/604b995f-7db0-4d52-b129-351d82d0831e)


## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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.
…ing secret recovery phrase to recover account with non-zero balance @no-mmi`aded (#27420)

<!--
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**
In the process for creating a new account, we get to see this error:

```
TimeoutError: Waiting for element to be located By(css selector, [data-testid="account-list-menu-details"])
Wait timed out after 10023ms
  (Ran on CircleCI Node 17 of 20, Job test-e2e-chrome)
    at /home/circleci/project/node_modules/selenium-webdriver/lib/webdriver.js:929:17
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
```
This happens after clicking the account menu, and after clicking the Add
account. It seems that the click doesn't hit exactly the button due to
the account list loading, making the button move. When the account list
is loaded, the click is performed outside the button boundary, and this
makes the popup close and you cannot find the next element:
"account-list-menu-details" element.

I haven't been able to reproduce this but I've seen this behaviour in
the manual process

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27420?quickstart=1)

## **Related issues**

Fixes: those 3 are fixed in this PR, as they were caused by the same
issue

- #27419
- #27337
- #27336

## **Manual testing steps**

1. Check ci
2. Run tests locally

## **Screenshots/Recordings**



<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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**
Changes include
* redux actions to set the selected src/dest tokens and token amount
* redux selectors to get the selected src/dest tokens and token amount


<!--
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?
-->

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/26212?quickstart=1)

## **Related issues**

Fixes:  https://consensyssoftware.atlassian.net/browse/METABRIDGE-866

## **Manual testing steps**

N/A. This doesn't change any user functionality, just setting up
getters/setters

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

N/A, redux state changes will take effect after UI for inputs is
implemented

## **Pre-merge author checklist**

- [X] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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 is to remove the unused closeMenu prop from
ConnectedAccountsMenu
## **Related issues**

Fixes: #27454 

## **Manual testing steps**

1. Go to the connections page
2. click on three dot menu for connected accounts
3. everything should be working as it is

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

NA
### **After**

NA
## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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.
#27457)

…ring error


<!--
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?
-->

The original code assumes that getMethodData will always return an
object with a name property. However, in certain instances,
getMethodData can return null. When this happens, destructuring the name
property from null causes a runtime error.

To address this issue, the code has been updated to use optional
chaining. This ensures that if getMethodData returns null, the
destructuring will not occur, and contractMethodName will be set to
undefined instead of causing an error.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27457?quickstart=1)

## **Related issues**

Fixes: #27436

## **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
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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 PR fixes: `test/e2e/tests/confirmations/signatures/permit.spec.ts`

Issue was that e2e were passing in CI, but failing locally. The changes
here provide a few helpers to prevent this flakey behavior.

The issue was first flagged here:
#27184 (comment)

Follow up slack thread here:
https://consensys.slack.com/archives/C03ETQA9EPK/p1727373903173259

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27450?quickstart=1)

## **Related issues**

Fixes: `test/e2e/tests/confirmations/signatures/permit.spec.ts` when
running chrome e2e locally

## **Manual testing steps**

1. Running `permit.spec.ts` should pass e2e chrome locally and in CI

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

N/A

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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: Nick Gambino <35090461+gambinish@users.noreply.github.com>
…es (#27412)

Vaibhav asked for new Sentry reporting rates from CircleCI:
- 10 times as frequent from the `develop` branch
- Never from other branches

I also put in an override, such that if your Git message includes
`[flags.sentry.tracesSampleRate: x.xx]` (a decimal number from 0.00 to
1.00), it will set `tracesSampleRate` to that fraction.

Moved what used to be at `_flags.doNotForceSentryForThisTest` to
`_flags.sentry.doNotForceSentryForThisTest`
<!--
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 adds `useLedgerConnnection` hook unit tests.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27358?quickstart=1)

## **Related issues**

Fixes: -

## **Manual testing steps**

No QA needed.

## **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
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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**

The Sentry trace sample rate for production has been doubled, to take
advantage of increased Sentry transaction quotas for our account.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27468?quickstart=1)

## **Related issues**

Closes #27467

## **Manual testing steps**

It's not easy to test this because it's probabilistic.

## **Screenshots/Recordings**

N/A

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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.
…tiates multiple signatures and rejects all` (#27481)

<!--
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**
There is a delay for waiting the signatures to be queued, which
sometimes is not enough. In this fix, we remove the delay and we add
conditions to wait for (each new signature is added in the navigation),
so the behaviour is deterministic.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27481?quickstart=1)

## **Related issues**

Fixes: #27480

## **Manual testing steps**

1. Check ci
2. Run test locally `yarn test:e2e:single
test/e2e/tests/confirmations/navigation.spec.ts --browser=chrome
--leave-running=true`

## **Screenshots/Recordings**

See how the last signature is not properly queued, so in the last screen
we don't see the navigation. We should wait on each new signature to be
added in the navigation queue, before adding a new one


https://github.com/user-attachments/assets/4637fb21-aeb5-4b4f-b2c2-b03b349211a1



## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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.
…flag (#27459)

<!--
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**

Recent permission flow changes introduced behind the `CHAIN_PERMISSIONS`
feature flag have broken permission connection for Snaps. This PR fixes
it by removing an incorrect forced route direct in the permission
connection component.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27459?quickstart=1)

## **Related issues**

Fixes: #26635

## **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
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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**

The back button brings the user to the stepper for ERC20 token transfer.

This PR includes creating a placeholder component for token transfer
confirmations. It also includes unit tests.

<!--
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?
-->

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27391?quickstart=1)

## **Related issues**

Fixes: MetaMask/MetaMask-planning#3218

## **Manual testing steps**

1. Enable redesign on developer options.
2. Initiate transfer from an erc20 token in the wallet.
3. The confirmation in the screenshot below should appear.

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

<img width="320" alt="Screenshot 2024-09-25 at 11 14 03"
src="https://github.com/user-attachments/assets/dd1b91ed-78f4-4f0e-8bcb-4d9d6ca4c43b">

## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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 is to update the following UI changes in the connect and the new
permissions page

## **Description**

* Fix the Typography
* Update background color on Connect Page
* Don't show header on review permissions page

## **Related issues**

Fixes: 

## **Manual testing steps**

1. Run extension with `CHAIN_PERMISSIONS=1 yarn start`
2. Check the following changes in Connect Page: Background color is
fixed, Typography looks aligned with design, Bottom learn more message
3. Fix Permissions Page: Typography is fixed, the list item has border
radius and proper padding, three dot menu replaced by Edit button

## **Screenshots/Recordings**


### **Before**
![Screenshot 2024-09-30 at 3 53
23 AM](https://github.com/user-attachments/assets/98aeb9f2-df44-46af-b2f2-777002228c64)

![Screenshot 2024-09-30 at 3 53
09 AM](https://github.com/user-attachments/assets/ade555e9-fbb2-424b-bc15-31af8a50e1b4)


### **After**
## Connect Page

![Screenshot 2024-09-30 at 4 01
38 AM](https://github.com/user-attachments/assets/818b2ef1-bf43-4eb3-890f-8b45eb29c50b)

## Permission Page
![Screenshot 2024-09-30 at 3 52
38 AM](https://github.com/user-attachments/assets/dd488013-2cd8-41df-ba5f-681daf48df93)

## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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**

Cut in half Sentry frequency on CircleCI develop

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/27912?quickstart=1)

## **Related issues**
## **Manual testing steps**
## **Screenshots/Recordings**
## **Pre-merge author checklist**
## **Pre-merge reviewer checklist**
@hjetpoluru hjetpoluru added extension-delivery INVALID-PR-TEMPLATE PR's body doesn't match template release-12.6.0 Issue or pull request that will be included in release 12.6.0 labels Oct 21, 2024
@hjetpoluru hjetpoluru requested review from a team and kumavis as code owners October 21, 2024 18:39
Copy link
Contributor

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

Copy link

socket-security bot commented Oct 21, 2024

New and removed dependencies detected. Learn more about Socket for GitHub ↗︎

Package New capabilities Transitives Size Publisher
npm/@babel/generator@7.25.5 None 0 489 kB nicolo-ribaudo
npm/@babel/helper-annotate-as-pure@7.24.7 None 0 52.4 kB nicolo-ribaudo
npm/@babel/helper-create-class-features-plugin@7.25.4 None +1 1.23 MB nicolo-ribaudo
npm/@babel/helper-module-imports@7.24.7 None 0 63.7 kB nicolo-ribaudo
npm/@babel/helper-module-transforms@7.25.2 None 0 160 kB nicolo-ribaudo
npm/@babel/helper-plugin-utils@7.24.8 None 0 114 kB nicolo-ribaudo
npm/@babel/helper-replace-supers@7.25.0 None 0 106 kB nicolo-ribaudo
npm/@babel/helper-simple-access@7.24.7 None 0 14.1 kB nicolo-ribaudo
npm/@babel/helper-skip-transparent-expression-wrappers@7.24.7 None 0 58.5 kB nicolo-ribaudo
npm/@babel/helper-validator-option@7.24.8 None 0 11.8 kB nicolo-ribaudo
npm/@babel/parser@7.25.4 None 0 1.89 MB nicolo-ribaudo
npm/@babel/plugin-syntax-jsx@7.24.7 None 0 70 kB nicolo-ribaudo
npm/@babel/plugin-syntax-typescript@7.25.4 None 0 69.7 kB existentialism, hzoo, jlhwung, ...1 more
npm/@babel/plugin-transform-modules-commonjs@7.24.8 None 0 107 kB nicolo-ribaudo
npm/@babel/plugin-transform-typescript@7.25.2 None 0 200 kB nicolo-ribaudo
npm/@babel/preset-typescript@7.24.7 None 0 90.8 kB nicolo-ribaudo
npm/@babel/runtime@7.25.4 None 0 248 kB nicolo-ribaudo
npm/@babel/template@7.25.0 None 0 70.4 kB nicolo-ribaudo
npm/@babel/types@7.25.4 environment 0 2.48 MB nicolo-ribaudo
npm/@emurgo/cardano-serialization-lib-browser@11.5.0 eval 0 3.35 MB lisicky_emurgo
npm/@emurgo/cardano-serialization-lib-nodejs@11.5.0 eval, filesystem 0 3.35 MB lisicky_emurgo
npm/@fivebinaries/coin-selection@2.2.1 None 0 149 kB slowbackspace
npm/@metamask-institutional/custody-controller@0.3.0 None +2 92.7 kB aregadas
npm/@metamask-institutional/custody-keyring@2.1.0 None 0 148 kB aregadas
npm/@metamask-institutional/extension@0.3.28 None 0 50.1 kB aregadas
npm/@metamask-institutional/institutional-features@1.3.6 None 0 25.6 kB aregadas
npm/@metamask-institutional/sdk@0.2.0 network 0 264 kB aregadas
npm/@metamask-institutional/transaction-update@0.2.6 None 0 48.6 kB aregadas
npm/@metamask-institutional/types@1.2.0 None 0 39.5 kB aregadas
npm/@metamask-institutional/websocket-client@0.2.6 None 0 35.7 kB aregadas
npm/@metamask/account-watcher@4.1.1 network +6 4.14 MB metamaskbot
npm/@metamask/accounts-controller@18.2.2 None 0 266 kB metamaskbot
npm/@metamask/bitcoin-wallet-snap@0.8.1 network 0 1.63 MB metamaskbot
npm/@metamask/eth-snap-keyring@4.4.0 None +1 1.34 MB
npm/@metamask/eth-trezor-keyring@3.1.3 None 0 84.5 kB metamaskbot
npm/@metamask/message-signing-snap@0.4.0 None 0 232 kB metamaskbot
npm/@metamask/preferences-controller@13.0.3 None 0 124 kB metamaskbot
npm/@metamask/preinstalled-example-snap@0.2.0 None 0 54 kB metamaskbot
npm/@metamask/rpc-errors@6.4.0 None 0 165 kB metamaskbot
npm/@metamask/selected-network-controller@18.0.2 None +2 482 kB metamaskbot
npm/@metamask/signature-controller@20.0.0 None 0 241 kB metamaskbot
npm/@metamask/slip44@4.0.0 None 0 136 kB metamaskbot
npm/@metamask/snaps-controllers@9.11.1 None 0 1.62 MB danfinlay, gudahtt, kumavis, ...8 more
npm/@metamask/snaps-execution-environments@6.9.1 None 0 5.51 MB metamaskbot
npm/@metamask/snaps-rpc-methods@11.5.0 None 0 1.23 MB danfinlay, gudahtt, kumavis, ...8 more
npm/@metamask/snaps-sdk@6.9.0 None 0 1.37 MB danfinlay, gudahtt, kumavis, ...8 more
npm/@metamask/test-dapp@8.7.0 None 0 12.4 MB gudahtt
npm/@mobily/ts-belt@3.13.1 None 0 381 kB mobily
npm/@remix-run/router@1.19.2 network 0 2.72 MB mjackson
npm/@sinclair/typebox@0.31.28 None 0 536 kB sinclair
npm/@solana/buffer-layout@4.0.1 None +1 288 kB steveluscher
npm/@solana/web3.js@1.95.3 network +1 11 MB lorisleiva
npm/@testing-library/dom@7.31.2 environment +4 3.17 MB testing-library-bot
npm/@trezor/analytics@1.2.0 network 0 14 kB trezor-ci
npm/@trezor/blockchain-link-types@1.2.0 None 0 56.3 kB trezor-ci
npm/@trezor/blockchain-link-utils@1.2.0 network 0 58.4 kB trezor-ci
npm/@trezor/blockchain-link@2.3.0 Transitive: environment, network +2 378 kB trezor-ci
npm/@trezor/connect-analytics@1.2.0 environment 0 5.41 kB trezor-ci
npm/@trezor/connect-common@0.2.0 None 0 180 kB trezor-ci
npm/@trezor/connect-web@9.4.0 None 0 93.8 kB trezor-ci
npm/@trezor/connect@9.4.0 filesystem Transitive: network +4 1.52 MB trezor-ci
npm/@trezor/env-utils@1.2.0 environment 0 17.7 kB trezor-ci
npm/@trezor/protobuf@1.2.0 None 0 1.09 MB trezor-ci
npm/@trezor/protocol@1.2.0 None 0 11.8 kB trezor-ci
npm/@trezor/schema-utils@1.2.0 None 0 38.7 kB trezor-ci
npm/@trezor/transport@1.3.0 network 0 165 kB trezor-ci
npm/@trezor/type-utils@1.1.0 None 0 2.89 kB trezor-ci
npm/@trezor/utils@9.2.0 None 0 64.2 kB trezor-ci
npm/@trezor/utxo-lib@2.2.0 None 0 234 kB trezor-ci
npm/@types/w3c-web-usb@1.0.10 None 0 8.92 kB types
npm/@types/web@0.0.138 None 0 1.36 MB types
npm/@types/ws@7.4.7 None 0 18.9 kB types
npm/agentkeepalive@4.5.0 network 0 43.7 kB fengmk2
npm/base58-js@1.0.5 None 0 9.65 kB pur3miish
npm/bchaddrjs@0.5.2 None +1 1.57 MB ealmansi
npm/bigint-buffer@1.1.5 None 0 55.7 kB no2chem
npm/bip66@1.1.5 None 0 7.79 kB dcousens
npm/bitcoin-address-validation@2.2.3 None 0 35.5 kB ruigomes
npm/bitcoin-ops@1.4.1 None 0 4.38 kB dcousens
npm/blake-hash@2.0.0 None +1 830 kB fanatid
npm/borsh@0.7.0 None 0 34.6 kB volovyk-s
npm/caniuse-lite@1.0.30001660 None 0 2.1 MB caniuse-lite
npm/cashaddrjs@0.4.4 None +1 274 kB ealmansi
npm/delay@5.0.0 None 0 11.2 kB sindresorhus
npm/dom-accessibility-api@0.5.16 None 0 257 kB eps1lon
npm/es6-promise@4.2.8 None 0 315 kB stefanpenner
npm/es6-promisify@5.0.0 None 0 7.76 kB digitaldesignlabs
npm/eth-chainlist@0.0.498 None 0 1.13 MB zanechua
npm/eyes@0.1.8 None 0 14 kB indexzero
npm/fast-stable-stringify@1.0.0 None 0 125 kB nickyout
npm/history@5.3.0 environment 0 121 kB mjackson
npm/humanize-ms@1.2.1 None 0 3.66 kB dead_horse
npm/int64-buffer@1.0.1 None 0 22.2 kB kawanet
npm/jayson@4.1.1 network +2 1.04 MB tedeh
npm/jsonschema@1.2.2 None 0 75.6 kB tdegrunt
npm/long@4.0.0 None 0 177 kB dcode
npm/lottie-web@5.12.2 network 0 25.7 MB airnan
npm/lz-string@1.5.0 None 0 176 kB pieroxy
npm/nan@2.15.0 None 0 422 kB kkoopa
npm/pushdata-bitcoin@1.0.1 None 0 4.28 kB dcousens
npm/react-router-dom-v5-compat@6.26.2 environment +1 1.41 MB mjackson
npm/react-router-dom@5.3.4 environment +1 762 kB mjackson
npm/react-router@5.3.4 environment 0 719 kB mjackson
npm/ripple-address-codec@4.2.3 None +1 56.7 kB jst5000
npm/ripple-binary-codec@1.3.0 None +1 1.18 MB jst5000
npm/ripple-keypairs@1.1.3 None 0 24.4 kB jst5000
npm/ripple-lib-transactionparser@0.8.2 None 0 147 kB intelliot
npm/ripple-lib@1.10.1 network 0 4.9 MB intelliot
npm/sha256-uint8array@0.10.7 None 0 33.2 kB kawanet
npm/superstruct@2.0.2 None 0 182 kB artmllr
npm/text-encoding-utf-8@1.0.2 None 0 79.4 kB arv
npm/tiny-secp256k1@1.1.6 None 0 1.1 MB junderw
npm/typeforce@1.18.0 None 0 19.1 kB dcousens
npm/ua-parser-js@1.0.37 None 0 112 kB faisalman
npm/undici-types@6.19.8 None 0 84.2 kB matteo.collina
npm/usb@2.12.0 None +1 7.3 MB thegecko
npm/varuint-bitcoin@1.1.2 None 0 5.49 kB junderw
npm/wif@4.0.0 None 0 4.67 kB junderw
npm/zod@3.23.8 None 0 667 kB colinmcd94

🚮 Removed packages: npm/@babel/generator@7.24.10, npm/@babel/helper-annotate-as-pure@7.22.5, npm/@babel/helper-create-class-features-plugin@7.24.5, npm/@babel/helper-module-imports@7.24.3, npm/@babel/helper-module-transforms@7.24.5, npm/@babel/helper-plugin-utils@7.24.5, npm/@babel/helper-skip-transparent-expression-wrappers@7.22.5, npm/@babel/helper-validator-option@7.23.5, npm/@babel/parser@7.24.8, npm/@babel/plugin-syntax-jsx@7.24.1, npm/@babel/plugin-syntax-typescript@7.24.1, npm/@babel/plugin-transform-modules-commonjs@7.24.1, npm/@babel/plugin-transform-typescript@7.24.5, npm/@babel/preset-typescript@7.24.1, npm/@babel/runtime@7.24.8, npm/@babel/traverse@7.24.8, npm/@babel/types@7.24.9, npm/@metamask-institutional/custody-controller@0.2.31, npm/@metamask-institutional/custody-keyring@2.0.3, npm/@metamask-institutional/extension@0.3.27, npm/@metamask-institutional/institutional-features@1.3.5, npm/@metamask-institutional/sdk@0.1.30, npm/@metamask-institutional/transaction-update@0.2.5, npm/@metamask-institutional/types@1.1.0, npm/@metamask-institutional/websocket-client@0.2.5, npm/@metamask/account-watcher@4.1.0, npm/@metamask/accounts-controller@18.2.1, npm/@metamask/assets-controllers@37.0.0, npm/@metamask/bitcoin-wallet-snap@0.6.0, npm/@metamask/eth-snap-keyring@4.3.3, npm/@metamask/eth-trezor-keyring@3.1.0, npm/@metamask/json-rpc-middleware-stream@6.0.2, npm/@metamask/keyring-api@4.0.2, npm/@metamask/message-signing-snap@0.3.3, npm/@metamask/polling-controller@9.0.1, npm/@metamask/preinstalled-example-snap@0.1.0, npm/@metamask/providers@15.0.0, npm/@metamask/rpc-errors@6.3.1, npm/@metamask/selected-network-controller@18.0.1, npm/@metamask/signature-controller@19.0.0, npm/@metamask/snaps-controllers@9.7.0, npm/@metamask/snaps-execution-environments@6.7.2, npm/@metamask/snaps-rpc-methods@11.1.1, npm/@metamask/snaps-sdk@6.5.1, npm/@metamask/test-dapp@8.4.0, npm/@testing-library/dom@7.22.2, npm/caniuse-lite@1.0.30001600, npm/dom-accessibility-api@0.5.0, npm/eth-rpc-errors@4.0.3, npm/extension-port-stream@3.0.0, npm/gud@1.0.0, npm/json-rpc-engine@6.1.0, npm/mini-create-react-context@0.3.2, npm/react-router-dom@5.1.2, npm/react-router@5.1.2, npm/zod@3.22.4

View full report↗︎

Copy link

socket-security bot commented Oct 21, 2024

🚨 Potential security issues detected. Learn more about Socket for GitHub ↗︎

To accept the risk, merge this PR and you will not be notified again.

Alert Package NoteSourceCI
Native code npm/tiny-secp256k1@1.1.6 🚫
Install scripts npm/tiny-secp256k1@1.1.6
  • Install script: install
  • Source: npm run build || echo "secp256k1 bindings compilation fail. Pure JS implementation will be used."
⚠︎
New author npm/varuint-bitcoin@1.1.2 🚫
New author npm/bs58@5.0.0 🚫
New author npm/bs58check@3.0.1 🚫
New author npm/@solana/buffer-layout@4.0.1 🚫
Network access npm/agentkeepalive@4.5.0 🚫
Network access npm/agentkeepalive@4.5.0 🚫
Native code npm/bigint-buffer@1.1.5 🚫
Install scripts npm/bigint-buffer@1.1.5
  • Install script: install
  • Source: npm run rebuild || echo "Couldn't build bindings. Non-native version used."
⚠︎
Deprecated npm/ripple-lib@1.10.1
  • Reason: ripple-lib is deprecated. Please migrate to xrpl.js using this migration guide: https://xrpl.org/xrpljs2-migration-guide.html
⚠︎
Network access npm/ripple-lib@1.10.1 🚫
Network access npm/ripple-lib@1.10.1 🚫
Network access npm/lottie-web@5.12.2 🚫
Native code npm/blake-hash@2.0.0 🚫
New author npm/wif@4.0.0 🚫
New author npm/node-addon-api@7.1.0 🚫
Native code npm/usb@2.12.0 🚫
Network access npm/jayson@4.1.1 🚫
Network access npm/jayson@4.1.1 🚫
Network access npm/jayson@4.1.1 🚫
Network access npm/jayson@4.1.1 🚫
Network access npm/@solana/web3.js@1.95.3 🚫
Network access npm/@solana/web3.js@1.95.3 🚫
Network access npm/@solana/web3.js@1.95.3 🚫
Network access npm/@trezor/transport@1.3.0 🚫
Network access npm/@trezor/blockchain-link-utils@1.2.0 🚫
Network access npm/@trezor/analytics@1.2.0 🚫
Network access npm/@remix-run/router@1.19.2 🚫
Network access npm/@metamask/bitcoin-wallet-snap@0.8.1 🚫

View full report↗︎

Next steps

Why is native code a concern?

Contains native code (e.g., compiled binaries or shared libraries). Including native code can obscure malicious behavior.

Verify that the inclusion of native code is expected and necessary for this package's functionality. If it is unnecessary or unexpected, consider using alternative packages without native code to mitigate potential risks.

What is an install script?

Install scripts are run when the package is installed. The majority of malware in npm is hidden in install scripts.

Packages should not be running non-essential scripts during install and there are often solutions to problems people solve with install scripts that can be run at publish time instead.

What is new author?

A new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.

Scrutinize new collaborator additions to packages because they now have the ability to publish code into your dependency tree. Packages should avoid frequent or unnecessary additions or changes to publishing rights.

What is network access?

This module accesses the network.

Packages should remove all network access that is functionally unnecessary. Consumers should audit network access to ensure legitimate use.

What is a deprecated package?

The maintainer of the package marked it as deprecated. This could indicate that a single version should not be used, or that the package is no longer maintained and any new vulnerabilities will not be fixed.

Research the state of the package and determine if there are non-deprecated versions that can be used, or if it should be replaced with a new, supported solution.

Take a deeper look at the dependency

Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support [AT] socket [DOT] dev.

Remove the package

If you happen to install a dependency that Socket reports as Known Malware you should immediately remove it and select a different dependency. For other alert types, you may may wish to investigate alternative packages or consider if there are other ways to mitigate the specific risk posed by the dependency.

Mark a package as acceptable risk

To ignore an alert, reply with a comment starting with @SocketSecurity ignore followed by a space separated list of ecosystem/package-name@version specifiers. e.g. @SocketSecurity ignore npm/foo@1.0.0 or ignore all packages with @SocketSecurity ignore-all

  • @SocketSecurity ignore npm/tiny-secp256k1@1.1.6
  • @SocketSecurity ignore npm/varuint-bitcoin@1.1.2
  • @SocketSecurity ignore npm/bs58@5.0.0
  • @SocketSecurity ignore npm/bs58check@3.0.1
  • @SocketSecurity ignore npm/@solana/buffer-layout@4.0.1
  • @SocketSecurity ignore npm/agentkeepalive@4.5.0
  • @SocketSecurity ignore npm/bigint-buffer@1.1.5
  • @SocketSecurity ignore npm/ripple-lib@1.10.1
  • @SocketSecurity ignore npm/lottie-web@5.12.2
  • @SocketSecurity ignore npm/blake-hash@2.0.0
  • @SocketSecurity ignore npm/wif@4.0.0
  • @SocketSecurity ignore npm/node-addon-api@7.1.0
  • @SocketSecurity ignore npm/usb@2.12.0
  • @SocketSecurity ignore npm/jayson@4.1.1
  • @SocketSecurity ignore npm/@solana/web3.js@1.95.3
  • @SocketSecurity ignore npm/@trezor/transport@1.3.0
  • @SocketSecurity ignore npm/@trezor/blockchain-link-utils@1.2.0
  • @SocketSecurity ignore npm/@trezor/analytics@1.2.0
  • @SocketSecurity ignore npm/@remix-run/router@1.19.2
  • @SocketSecurity ignore npm/@metamask/bitcoin-wallet-snap@0.8.1

@danjm
Copy link
Contributor

danjm commented Oct 22, 2024

Builds ready [30d7f1c]
Page Load Metrics (2005 ± 87 ms)
PlatformPageMetricMin (ms)Max (ms)Average (ms)StandardDeviation (ms)MarginOfError (ms)
ChromeHomefirstPaint16922531200218488
domContentLoaded16692523197819091
load16842529200518287
domInteractive20179523215
backgroundConnect1088302210
firstReactRender512941054823
getState664192010
initialActions00000
loadScripts11591985147517885
setupStore1365322110
uiStartup18942802224020297
Bundle size diffs
  • background: 0 Bytes (0.00%)
  • ui: 0 Bytes (0.00%)
  • common: 0 Bytes (0.00%)

@benjisclowder
Copy link
Contributor

benjisclowder commented Oct 22, 2024

Version 12.6.0 Release Validation. NEW SCOPE!

Release scope has been after merging 12.6.0 and 12.7.0.
Release Cut: October 21
Release Tracker Available: October 22
Target Date for Release Sign-Off: October 29

Hi Teams! We can start testing and validating v12.6.0 new release scope. Let's do this!

Instructions for Teams

  1. Review Changes: Refer to the Release Tracker for v12.6.0 to see all changes relevant to your team.
  • Testing status to update the PR testing status: In Progress, Passed, Failed (with comments), Blocked, or Skipped (for documentation or testing improvements).
  • Changelog status aids documentation. Select: Changed, Fixed, Added, or N/A if not required.
  • Type of Change helps determine the impact. It is broadly categorized as Functional(User facing or non), Non-Functional(regression or not), Non main change.
  1. Log Bugs: If you find any issues, log them in the release tracker, and make sure you add the right labels on it: type-bug , regression-RC-x.y.z , (and release-blocker when needed).

  2. Approval: After testing is completed, indicate your team's approval by marking the checkbox next to your team's name in comment. Optionally, leave a comment for additional information.

Your thorough review ensures a smooth and successful release. If you have any questions please reach out to extension platform team or in the #metamask-qa slack channel. Thank you for your collaboration!

Teams to Sign Off 12.6.0 Release on GH:

Important Reminder:
Please be aware of the importance of starting your testing immediately to ensure there is sufficient time to address any unexpected defects. This proactive approach will help prevent release delays and minimize impacts on other teams' deliveries.

## **Description**

Cherry-pick of #28016
into v12.6

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/28016?quickstart=1)

## **Manual testing steps**

1. Start a swap
2. Notice that the quote rate is back on one line and the value is
left-aligned

## **Screenshots/Recordings**

### **Before**

![Screenshot 2024-10-11 at 11 32
09 AM](https://github.com/user-attachments/assets/aae5da2f-ae66-46f5-9168-6c6ed496a2a8)


### **After**

<img width="359" alt="Screenshot 2024-10-22 at 12 13 50 PM"
src="https://github.com/user-attachments/assets/f5974e8a-62a6-464e-a037-b7ce38774f42">


## **Pre-merge author checklist**

- [X] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.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-extension/blob/develop/.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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
extension-delivery INVALID-PR-TEMPLATE PR's body doesn't match template release-12.6.0 Issue or pull request that will be included in release 12.6.0 team-extension-platform
Projects
None yet
Development

Successfully merging this pull request may close these issues.