Skip to content

feat(onboarding): TMCU-792 interest questionnaire 2-column grid#30753

Merged
wachunei merged 3 commits into
mainfrom
feat/TMCU-792-onboarding-interest-grid
May 28, 2026
Merged

feat(onboarding): TMCU-792 interest questionnaire 2-column grid#30753
wachunei merged 3 commits into
mainfrom
feat/TMCU-792-onboarding-interest-grid

Conversation

@wachunei

@wachunei wachunei commented May 28, 2026

Copy link
Copy Markdown
Member

Description

Updates the onboarding interest questionnaire (“What do you want to do with MetaMask?”) to match the TMCU-792 design refresh:

  • Options are shown in a two-column grid with consistent 8px gutters (50% column wrappers + padding).
  • Each card uses a top-right selection indicator and keeps the existing option illustrations in app/images/.
  • Copy updates in en.json: “Buy and sell crypto tokens” and “Trade perpetuals” (advanced_trades id unchanged for analytics).
  • Continue still calls onComplete() directly (crypto experience screen is TMCU-833, separate PR).

Changelog

CHANGELOG entry: Updated the onboarding interest questionnaire layout to a two-column grid with refreshed option labels.

Related issues

Fixes: https://consensyssoftware.atlassian.net/browse/TMCU-792

Manual testing steps

Feature: Onboarding interest questionnaire grid (TMCU-792)

  Scenario: user completes interest questionnaire after opting in to metrics
    Given the user is on the OptinMetrics screen during onboarding
    And the interest questionnaire eligibility check returns true

    When the user opts in to basic usage data and taps Continue
    Then the interest questionnaire is shown with six options in a two-column grid
    And the user can select multiple options
    And tapping Continue submits analytics and proceeds with onboarding (onComplete)

  Scenario: user can skip selecting interests
    Given the user is on the interest questionnaire screen

    When the user taps Continue without selecting any option
    Then onboarding continues with skipped interest analytics

Screenshots/Recordings

Before

Light Mode Dark Mode
questionnaire_light questionnaire_dark

After

Light Mode Dark Mode
questionnaire_light questionnaire_dark

Pre-merge author checklist

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 to import wallets with many accounts and tokens
  • I've instrumented key operations with Sentry traces for production performance metrics

For performance guidelines and tooling, see the Performance Guide.

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.

Note

Low Risk
Onboarding UI and copy only; selection analytics and Continue flow are unchanged aside from layout.

Overview
Refreshes the onboarding interest questionnaire to a two-column card grid (8px gutters) instead of full-width list rows. Each option is a fixed-height card with the illustration and label repositioned and a new top-right selection indicator (InterestSelectionIndicator).

English copy updates two labels: Buy and sell crypto tokens and Trade perpetuals (option ids unchanged for analytics). Continue still only invokes onComplete()—tests now assert it does not call navigation.

Adds unit tests for the indicator and extends questionnaire tests for the grid layout, i18n strings, and continue behavior.

Reviewed by Cursor Bugbot for commit ecf523e. Bugbot is set up for automated code reviews on this repo. Configure here.

wachunei added 2 commits May 28, 2026 10:28
- Refactor options into a stable 50% column layout with 8px gutters
- Add top-right selection indicator; keep existing option PNG assets
- Update en copy (crypto tokens, trade perpetuals); keep advanced_trades id
- Temporary __DEV__ eligibility threshold for local QA (TODO remove before rollout)
@github-actions github-actions Bot added the pr-not-ready-for-e2e Skip E2E and block merging. Remove this label once the PR is ready to run the E2E tests. label May 28, 2026
@metamaskbotv2 metamaskbotv2 Bot added the team-mobile-ux Mobile UX team label May 28, 2026
@wachunei wachunei marked this pull request as ready for review May 28, 2026 14:40
@wachunei wachunei removed the pr-not-ready-for-e2e Skip E2E and block merging. Remove this label once the PR is ready to run the E2E tests. label May 28, 2026

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit f0feea3. Configure here.

Add testID and replace toBeTruthy() snapshot checks with getByTestId
assertions per unit testing guidelines.
@github-actions

Copy link
Copy Markdown
Contributor

🔍 Smart E2E Test Selection

  • Selected E2E tags: SmokeAccounts, SmokeConfirmations, SmokeIdentity, SmokeNetworkAbstractions, SmokeNetworkExpansion, SmokeSwap, SmokeStake, SmokeWalletPlatform, SmokeMoney, SmokePerps, SmokeMultiChainAPI, SmokePredictions, SmokeSeedlessOnboarding, SmokeBrowser, SmokeSnaps
  • Selected Performance tags: @PerformanceAccountList, @PerformanceOnboarding, @PerformanceLogin, @PerformanceSwaps, @PerformanceLaunch, @PerformanceAssetLoading, @PerformancePredict, @PerformancePreps
  • Risk Level: high
  • AI Confidence: %
click to see 🤖 AI reasoning details

E2E Test Selection:
Fallback: AI analysis did not complete successfully. Running all tests.

Performance Test Selection:
Fallback: AI analysis did not complete successfully. Running all performance tests.

View GitHub Actions results

@wachunei wachunei enabled auto-merge May 28, 2026 17:09
@wachunei wachunei added this pull request to the merge queue May 28, 2026
Merged via the queue into main with commit 559b7cd May 28, 2026
304 of 308 checks passed
@wachunei wachunei deleted the feat/TMCU-792-onboarding-interest-grid branch May 28, 2026 17:32
@github-actions github-actions Bot locked and limited conversation to collaborators May 28, 2026
@metamaskbotv2 metamaskbotv2 Bot added the release-7.80.0 Issue or pull request that will be included in release 7.80.0 label May 28, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

release-7.80.0 Issue or pull request that will be included in release 7.80.0 size-M team-mobile-ux Mobile UX team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants