Conversation
- Add MetaMetrics events for contacts: ContactsPageViewed, ContactDetailsViewed, AddContactClicked, ContactAddQrScannerClicked, ContactAdded, EditContactClicked, ContactUpdated, DeleteContactClicked, ContactDeleted (category: Contacts) - Include contact_address in sensitiveProperties where applicable - Remove old Settings > Contact list tab and routes (CONTACT_LIST_ROUTE, etc.) - Move ContactNetworks to ui/pages/contacts/components - Enable Contacts in global menu (Manage section) - Update E2E: contacts page object for new UI, HeaderNavbar.openContactsPage(), address-book, settings-search, contact-syncing specs use new contacts flow Made-with: Cursor
Builds ready [a010299]
⚡ Performance Benchmarks
🌐 Dapp Page Load BenchmarksCurrent Commit: 📄 Localhost MetaMask Test DappSamples: 100 Summary
📈 Detailed Results
Bundle size diffs [🚨 Warning! Bundle size has increased!]
|
Builds ready [162a90e]
⚡ Performance Benchmarks
🌐 Dapp Page Load BenchmarksCurrent Commit: 📄 Localhost MetaMask Test DappSamples: 100 Summary
📈 Detailed Results
Bundle size diffs [🚨 Warning! Bundle size has increased!]
|
Builds ready [ac9f364]
⚡ Performance Benchmarks
🌐 Dapp Page Load BenchmarksCurrent Commit: 📄 Localhost MetaMask Test DappSamples: 100 Summary
📈 Detailed Results
Bundle size diffs [🚨 Warning! Bundle size has increased!]
|
…e-settings-contact
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Builds ready [e6b1bc4]
⚡ Performance Benchmarks
🌐 Dapp Page Load BenchmarksCurrent Commit: 📄 Localhost MetaMask Test DappSamples: 100 Summary
📈 Detailed Results
Bundle size diffs [🚀 Bundle size reduced!]
|
seaona
left a comment
There was a problem hiding this comment.
Added a small suggestion for e2e files. Overall looks good!
ameliejyc
left a comment
There was a problem hiding this comment.
Thanks for making those changes! It's looking great, a couple more things I noticed though:
- There is a border radius on the selected network active style which we should remove
- The Testnets section needs to have the same margin as the networks
- I think it would better to have the toast above the Add contact button if design agrees
|
Builds ready [bcfe395]
⚡ Performance Benchmarks
🌐 Dapp Page Load BenchmarksCurrent Commit: 📄 Localhost MetaMask Test DappSamples: 100 Summary
📈 Detailed Results
Bundle size diffs [🚀 Bundle size reduced!]
|
gantunesr
left a comment
There was a problem hiding this comment.
Approved for accounts
- test/e2e/tests/identity/contact-syncing/backup-and-sync-settings.spec.ts
- test/e2e/tests/identity/contact-syncing/sync-existing-user.spec.ts
- test/e2e/tests/identity/contact-syncing/sync-new-user.spec.ts


Added contacts metrics and replace settings contacts with standalone flow
Description
Reason for the change: The contacts (address book) experience lived only under Settings and had no product analytics. We need a single, standalone contacts entry point from the global menu and to measure usage via MetaMetrics.
Improvement/solution:
Contactsandcontact_addressinsensitivePropertieswhere applicable./settings/contact-listroutes and delete the old contact-list-tab UI.ContactNetworksintoui/pages/contacts/components.HeaderNavbar.openContactsPage()), and remove the "Contacts tab" settings-search test.Changelog
CHANGELOG entry: Replaced the Settings contacts tab with a standalone Contacts page accessible from the global menu and added analytics for the contacts list and add/edit/delete actions.
Related issues
Fixes: CEUX-940
Manual testing steps
yarn start), then unlock the wallet.Screenshots/Recordings
Before
NA
After
Screen.Recording.2026-03-10.at.12.35.43.PM.mov
Pre-merge author checklist
Pre-merge reviewer checklist
Note
Medium Risk
Moderate risk due to navigation/routing changes and broad test refactors around the contacts flow; analytics additions are low-impact but can surface runtime issues if event wiring or selectors are incorrect.
Overview
Moves the Contacts (address book) experience out of Settings and into a standalone
/contactsflow reachable from the global menu (Manage → Contacts), removing the legacy settings tab/routes and related settings-search coverage.Adds MetaMetrics instrumentation for contacts usage (page/detail views and add/edit/delete + QR scanner actions), updates contacts UI components (theme-specific empty-state artwork, network picker moved into
ui/pages/contacts/components, duplicate indicator, avatar usage), and refactors E2E page objects/tests to navigate via the new global-menu entry point and updated selectors.Written by Cursor Bugbot for commit bcfe395. This will update automatically on new commits. Configure here.