chore(runway): cherry-pick fix: fix market insights and security page buttons cp-7.80.0#30886
Merged
Merged
Conversation
… buttons cp-7.80.0 (#30871) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until this PR meets the canonical Definition of Ready For Review in `docs/readme/ready-for-review.md`. In short: the template must be materially complete (not just section titles present), all status checks must be currently passing, and the only expected follow-up commits must be reviewer-driven. --> ## **Description** Pass the resolved ambient price color state (`isPricePositive` and `useAmbientColor`) from the Token Details page through to the Market Insights and Security Trust sub-screens so the Swap/Buy footer buttons consistently match the token details theme color (green when price is up, orange when price is down). Previously, navigating to Market Insights or the Security Trust page would always render the footer buttons in the default green, ignoring the ambient color A/B test treatment active on the parent screen. ## **Changelog** <!-- If this PR is not End-User-Facing and should not show up in the CHANGELOG, you can choose to either: 1. Write `CHANGELOG entry: null` 2. Label with `no-changelog` If this PR is End-User-Facing, please write a short User-Facing description in the past tense like: `CHANGELOG entry: Added a new tab for users to see their NFTs` `CHANGELOG entry: Fixed a bug that was causing some NFTs to flicker` (This helps the Release Engineer do their job more quickly and accurately) --> CHANGELOG entry: Fixed Market Insights and Security Trust page footer buttons not reflecting the ambient price color from the Token Details page ## **Related issues** Fixes: [ASSETS-3307](https://consensyssoftware.atlassian.net/browse/ASSETS-3307) ## **Manual testing steps** ```gherkin Feature: Ambient color consistency across Token Details sub-screens Scenario: Footer buttons match token details color on Market Insights Given the user is on the Token Details page for a token with a negative price change And the ambient price color A/B test is active And the footer buttons are orange When user taps the Market Insights entry card Then the Swap/Buy buttons on the Market Insights page should also be orange Scenario: Footer buttons match token details color on Security Trust Given the user is on the Token Details page for a token with a negative price change And the ambient price color A/B test is active And the footer buttons are orange When user taps the Security Trust entry card Then the Swap/Buy buttons on the Security Trust page should also be orange Scenario: Positive price direction shows green on sub-screens Given the user is on the Token Details page for a token with a positive price change And the ambient price color A/B test is active And the footer buttons are green When user navigates to Market Insights or Security Trust Then the Swap/Buy buttons should remain green Scenario: Control group unaffected Given the user is in the control group for the ambient price color A/B test When user navigates to Market Insights or Security Trust Then the Swap/Buy buttons should display the default green color ``` ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> https://github.com/user-attachments/assets/3aff0900-edeb-4900-b2d0-4cc4f22f2610 ## **Pre-merge author checklist** <!-- Every checklist item must be consciously assessed before marking this PR as "Ready for review". A checked box means you deliberately considered that responsibility, not that you literally performed every action listed. Unchecked boxes are ambiguous: they are not an implicit "N/A" and they are not a silent "skip". See `docs/readme/ready-for-review.md` for the full checklist semantics. --> - [ ] I've followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I've included tests if applicable - [ ] I've documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I've applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. #### Performance checks (if applicable) - [ ] I've tested on Android - Ideally on a mid-range device; emulator is acceptable - [ ] I've tested with a power user scenario - Use these [power-user SRPs](https://consensyssoftware.atlassian.net/wiki/spaces/TL1/pages/edit-v2/401401446401?draftShareId=9d77e1e1-4bdc-4be1-9ebb-ccd916988d93) to import wallets with many accounts and tokens - [ ] I've instrumented key operations with Sentry traces for production performance metrics - See [`trace()`](/app/util/trace.ts) for usage and [`addToken`](/app/components/Views/AddAsset/components/AddCustomToken/AddCustomToken.tsx#L274) for an example For performance guidelines and tooling, see the [Performance Guide](https://consensyssoftware.atlassian.net/wiki/spaces/TL1/pages/400085549067/Performance+Guide+for+Engineers). ## **Pre-merge reviewer checklist** <!-- Reviewer checklist items follow the same semantics as the author checklist: an unchecked box is ambiguous, a checked box means the reviewer consciously assessed that responsibility. See `docs/readme/ready-for-review.md`. --> - [ ] 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. <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > UI-only navigation prop plumbing for an existing A/B test; no auth, payments, or data-layer changes. > > **Overview** > **Token Details** now forwards chart price direction (`isPricePositive`) and the ambient price-color A/B flag (`useAmbientColor`) into **Market Insights** and **Security & Trust** navigation params and sticky footers. > > From `AssetOverviewContent`, opening Market Insights includes those fields on the route; the Security entry card passes them into `Routes.SECURITY_TRUST`. **MarketInsightsView** and **SecurityTrustScreen** read the params and pass them to `TokenDetailsStickyFooter`, so Swap/Buy styling stays aligned with Token Details (green vs orange) instead of defaulting to green on push. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 87ce159. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY --> [ASSETS-3307]: https://consensyssoftware.atlassian.net/browse/ASSETS-3307?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
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. |
Contributor
🔍 Smart E2E Test Selection⏭️ Smart E2E selection skipped - PR targets a release or stable branch (release/* or stable) All E2E tests pre-selected. |
vpintorico
approved these changes
Jun 2, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Pass the resolved ambient price color state (
isPricePositiveanduseAmbientColor) from the Token Details page through to the MarketInsights and Security Trust sub-screens so the Swap/Buy footer buttons
consistently match the token details theme color (green when price is
up, orange when price is down).
Previously, navigating to Market Insights or the Security Trust page
would always render the footer buttons in the default green, ignoring
the ambient color A/B test treatment active on the parent screen.
Changelog
CHANGELOG entry: Fixed Market Insights and Security Trust page footer
buttons not reflecting the ambient price color from the Token Details
page
Related issues
Fixes:
ASSETS-3307
Manual testing steps
Screenshots/Recordings
Before
After
Screen.Recording.2026-06-01.at.17.07.49.mov
Pre-merge author checklist
Docs and MetaMask Mobile
Coding
Standards.
if applicable
guidelines).
Not required for external contributors.
Performance checks (if applicable)
SRPs
to import wallets with many accounts and tokens
performance metrics
trace()for usage andaddTokenfor an example
For performance guidelines and tooling, see the Performance
Guide.
Pre-merge reviewer checklist
app, test code being changed).
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
Note
Low Risk
UI-only navigation prop plumbing for an existing A/B test; no auth,
payments, or data-layer changes.
Overview
Token Details now forwards chart price direction
(
isPricePositive) and the ambient price-color A/B flag(
useAmbientColor) into Market Insights and Security & Trustnavigation params and sticky footers.
From
AssetOverviewContent, opening Market Insights includes thosefields on the route; the Security entry card passes them into
Routes.SECURITY_TRUST. MarketInsightsView andSecurityTrustScreen read the params and pass them to
TokenDetailsStickyFooter, so Swap/Buy styling stays aligned with TokenDetails (green vs orange) instead of defaulting to green on push.
Reviewed by Cursor Bugbot for commit
87ce159. Bugbot is set up for automated
code reviews on this repo. Configure
here.
ASSETS-3307:
https://consensyssoftware.atlassian.net/browse/ASSETS-3307?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ da62c11