Skip to content

Conversation

@DDDDDanica
Copy link
Contributor

@DDDDDanica DDDDDanica commented Apr 24, 2025

Description

Open in GitHub Codespaces

Related issues

Fixes:

Manual testing steps

  1. Go to this page...

Screenshots/Recordings

Before

After

Pre-merge author checklist

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.

Runway bumped your version to 12.16.2

Co-authored-by: runway-github[bot] <73448015+runway-github[bot]@users.noreply.github.com>
@metamaskbot metamaskbot added the team-extension-platform Extension Platform team label Apr 24, 2025
) cp-12.16.2 (#32301)

CP: #32179
**Issue:** Firefox's updated Add-on policies (as of February 2024)
require that metrics opt-in be shown immediately upon onboarding.
Currently, MetaMask shows a "Welcome" page first, followed by the
MetaMetrics opt-in page, which no longer complies with Firefox's
requirements. This is a **temporary** solution, we plan on updating the
onboarding flow completely in the near future

**Solution:**
- Modified the onboarding flow specifically for Firefox users to show
the MetaMetrics opt-in page as the first screen
- Maintained the original flow (Welcome page first) for all other
browsers
- Implementation detects Firefox using `getPlatform()` and conditionally
adjusts the page order

This change ensures compliance with Firefox's [updated Add-on
policies](https://extensionworkshop.com/documentation/publish/add-on-policies/#data-disclosure-collection-and-management)
while maintaining the existing experience for users on other platforms.

[![Open in GitHub

Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/32179?quickstart=1)

Fixes:
[32173](#32173)

Firefox Testing:
1. Remove MetaMask extension if already installed
2. Install fresh extension on Firefox
3. Verify that the MetaMetrics opt-in page appears as the first screen
4. Complete the onboarding flow to ensure all subsequent pages appear
correctly

Other Browsers Testing:
1. Repeat steps 1-3 on Chrome, Brave, Edge, and Opera
2. Verify that these browsers maintain the original flow (Welcome page
first)
3. Ensure the complete onboarding flow works as expected

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

1. Welcome page
2. MetaMetrics opt-in page


https://github.com/user-attachments/assets/eea4eeb0-c89e-407f-99be-651ad49680a6

Firefox onboarding flow:
1. MetaMetrics opt-in page
2. Welcome page


https://github.com/user-attachments/assets/86f50ddf-a7f7-451c-8ac1-95317deb8036

Other browsers remain unchanged:
1. Welcome page
2. MetaMetrics opt-in page


https://github.com/user-attachments/assets/eea4eeb0-c89e-407f-99be-651ad49680a6

- [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/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-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

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

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/32301?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/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-extension/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: Vince Howard <vincenguyenhoward@gmail.com>
@github-actions
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.

runway-github bot and others added 2 commits April 26, 2025 21:33
… exclude metametrics id data (#32304)

- chore: cp-12.16.2 Make "Dapp Viewed" event exclude metametrics id data
(#32207)

## **Description**
Per [this slack

thread](https://consensys.slack.com/archives/CTQAGKY5V/p1745413333736539),
we should exclude metametrics Id data from `Dapp Viewed` events

[![Open in GitHub

Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/32207?quickstart=1)

## Before
![Screenshot 2025-04-23 at 4 43

56 PM](https://github.com/user-attachments/assets/64aa00eb-7954-4aef-8473-18bc71f60f02)

## After
![Screenshot 2025-04-23 at 4 26

06 PM](https://github.com/user-attachments/assets/ef577b43-ba38-49bc-a332-18d7429dccf4)


## **Related issues**

Fixes: https://github.com/MetaMask/MetaMask-planning/issues/4743

## **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/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-extension/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: Mark Stacey <mark.stacey@consensys.net>
[349cd2e](349cd2e)

---------

Co-authored-by: Alex Donesky <adonesky@gmail.com>
Co-authored-by: Mark Stacey <mark.stacey@consensys.net>
Co-authored-by: Danica Shen <zhaodanica@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**

<!--
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/32327?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/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-extension/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?
-->

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/32336?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/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-extension/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: javiergarciavera <76975121+javiergarciavera@users.noreply.github.com>
@DDDDDanica DDDDDanica marked this pull request as ready for review April 28, 2025 16:46
@DDDDDanica DDDDDanica requested a review from a team as a code owner April 28, 2025 16:46
@metamaskbot
Copy link
Collaborator

Builds ready [f2e26fc]
UI Startup Metrics (1209 ± 69 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1209109214726912561324
load10569481238631163970
domContentLoaded10509431233621185994
domInteractive17133751630
firstPaint8241311185376235973
backgroundConnect106263910
firstReactRender20164862033
getState10434679
initialActions001001
loadScripts835737100059876944
setupStore8425378
WebpackHomeuiStartup1021763126886955996
load861610101280894975
domContentLoaded855602100880886971
domInteractive16123761435
firstPaint221559572276295
backgroundConnect18134881740
firstReactRender1813162151727
getState6323357
initialActions002001
loadScripts852594100680884967
setupStore8517278
FirefoxBrowserifyHomeuiStartup13651193183612614061692
load12261055168811712671490
domContentLoaded12251055168811712671489
domInteractive10039197268698
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2417136132440
firstReactRender23195252332
getState741021078
initialActions001001
loadScripts12021039166111712381461
setupStore6426367
WebpackHomeuiStartup10158451524140916974
load8867391361124879990
domContentLoaded8857381361124879989
domInteractive113331842815497
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect241482152571
firstReactRender19162522022
getState8440589
initialActions001001
loadScripts8667221335121891980
setupStore105661179

@Gudahtt
Copy link
Member

Gudahtt commented Apr 28, 2025

All three Firefox changes appear to be working correctly for me locally.

Copy link
Member

@Gudahtt Gudahtt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@Gudahtt Gudahtt merged commit 09ceb74 into master Apr 28, 2025
258 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators Apr 28, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

team-extension-platform Extension Platform team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants