Skip to content

feat: as a money account user i want to access my money account activity via the money account homepage so that i can see card deposit and other activity#28632

Merged
nickewansmith merged 8 commits intomainfrom
MUSD-476-as-a-money-account-user-i-want-to-access-my-money-account-activity-via-the-money-account-homepage-so-that-i-can-see-card-deposit-and-other-activity-1
Apr 10, 2026
Merged

feat: as a money account user i want to access my money account activity via the money account homepage so that i can see card deposit and other activity#28632
nickewansmith merged 8 commits intomainfrom
MUSD-476-as-a-money-account-user-i-want-to-access-my-money-account-activity-via-the-money-account-homepage-so-that-i-can-see-card-deposit-and-other-activity-1

Conversation

@nickewansmith
Copy link
Copy Markdown
Contributor

@nickewansmith nickewansmith commented Apr 10, 2026

Description

Reason: Money account users need visibility into card, deposit, and other Money-related activity from the Money home experience, with a path to a dedicated list for review and filtering.

Solution: This PR adds a Recent activity (or equivalent) section on MoneyHomeView when there are transactions, backed by useMoneyAccountTransactions and new UI (MoneyActivityList, MoneyActivityItem). Users can open a full Money Activity screen (MoneyActivityView) via the stack route Routes.MONEY.ACTIVITY, with date-grouped sections and filters (All / Deposits / Transfers). Transaction rows reuse and extend MultichainTransactionListItem for consistent display and fiat formatting via moneyActivityFiat and useMoneyTransactionDisplayInfo. Row and “View all” taps on activity items still surface an under construction alert until detail flows ship.

Activity data is driven by remote feature flag moneyActivityMockDataEnabled (or MM_MONEY_ACTIVITY_MOCK_DATA_ENABLED for local/dev); when mock data is off, lists stay empty until a dedicated Money transactions source is wired in.

Changelog

CHANGELOG entry: Added Money account activity preview on the Money home screen and a full activity list with filters when enabled by feature flags

Related issues

Fixes: https://consensyssoftware.atlassian.net/browse/MUSD-440
Fixes: https://consensyssoftware.atlassian.net/browse/MUSD-429

Manual testing steps

Feature: Money account activity (home and full screen)

  Background:
    Given Money home and Money activity are enabled for the build
    And remote flag moneyActivityMockDataEnabled is on (or MM_MONEY_ACTIVITY_MOCK_DATA_ENABLED=true for local QA)

  Scenario: user sees activity on Money home and opens full activity
    Given I am on the Money home screen
    And mock Money transactions are available

    Then I should see a Money activity section with recent rows
    When user taps "View all" (or the section header shortcut)
    Then I should land on the full Money Activity screen with a back affordance

  Scenario: user filters activity on the full screen
    Given I am on the full Money Activity screen

    When user selects the Deposits filter
    Then only deposit-type rows should appear
    When user selects the Transfers filter
    Then only transfer-type rows should appear
    When user selects All
    Then the full merged list should appear

  Scenario: user taps an activity row (placeholder)
    Given I am on the Money home activity section or the full Money Activity screen

    When user taps a transaction row
    Then an under construction alert should be shown

Screenshots/Recordings

Before

After

https://www.loom.com/share/48b54c51745d4d03947ab4a48bc0fe99

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.

Note

Medium Risk
Adds new Money activity UI, navigation route, and fiat-display logic driven by a new remote/env feature flag; while mostly additive, it touches transaction formatting/conversion and navigation paths that could affect Money screens.

Overview
Adds a Money Activity experience: a recent-activity preview on MoneyHomeView (with a "View all" CTA) and a new full-screen MoneyActivityView that groups transactions by date and supports All / Deposits / Transfers filtering.

Introduces new shared UI + data plumbing for activity rows: MoneyActivityList (5-item preview), MoneyActivityItem (row rendering + optional network badge), useMoneyTransactionDisplayInfo and moneyActivityFiat for token/fiat line formatting, and moneyActivityFilters/activityStyles helpers.

Wires the screen into navigation by adding Routes.MONEY.ACTIVITY and registering it in the Money stack (with themed cardStyle background), and gates mock activity data behind a new moneyActivityMockDataEnabled remote flag (with MM_MONEY_ACTIVITY_MOCK_DATA_ENABLED fallback). Includes comprehensive unit tests and new en.json strings for activity and transaction labels.

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

…to MUSD-476-as-a-money-account-user-i-want-to-access-my-money-account-activity-via-the-money-account-homepage-so-that-i-can-see-card-deposit-and-other-activity-1
@github-actions
Copy link
Copy Markdown
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.

@nickewansmith nickewansmith changed the title Musd 476 as a money account user i want to access my money account activity via the money account homepage so that i can see card deposit and other activity 1 feat: as a money account user i want to access my money account activity via the money account homepage so that i can see card deposit and other activity Apr 10, 2026
@nickewansmith nickewansmith marked this pull request as ready for review April 10, 2026 02:12
@nickewansmith nickewansmith requested review from a team as code owners April 10, 2026 02:12
@github-actions github-actions bot added the risk-high Extensive testing required · High bug introduction risk label Apr 10, 2026
@nickewansmith nickewansmith added team-earn No QA Needed Apply this label when your PR does not need any QA effort. labels Apr 10, 2026
@github-actions github-actions bot added risk-low Low testing needed · Low bug introduction risk and removed risk-high Extensive testing required · High bug introduction risk labels Apr 10, 2026
@github-actions github-actions bot added risk-high Extensive testing required · High bug introduction risk and removed risk-low Low testing needed · Low bug introduction risk labels Apr 10, 2026
@github-actions
Copy link
Copy Markdown
Contributor

E2E Fixture Validation — Schema is up to date
16 value mismatches detected (expected — fixture represents an existing user).
View details

@github-actions github-actions bot added risk-low Low testing needed · Low bug introduction risk and removed risk-high Extensive testing required · High bug introduction risk labels Apr 10, 2026
@github-actions
Copy link
Copy Markdown
Contributor

🔍 Smart E2E Test Selection

  • Selected E2E tags: None (no tests recommended)
  • Selected Performance tags: None (no tests recommended)
  • Risk Level: low
  • AI Confidence: 85%
click to see 🤖 AI reasoning details

E2E Test Selection:
The changes in this PR are focused on the Money module - a new/in-development feature area. Here's the detailed analysis:

  1. Feature Flag Registry (CRITICAL file): Only adds a new moneyActivityMockDataEnabled flag with productionDefault: false and inProd: false. This is purely additive and the flag is disabled by default, so it won't affect any existing E2E tests.

  2. Money Module Components (37 files): All changes are within app/components/UI/Money/ - a new feature area. This includes:

    • New MoneyActivityView screen with filtering capabilities
    • Updated MoneyHomeView with activity list integration
    • New components, hooks, selectors, constants, and utilities
    • All are new additions, not modifications to existing shared components
  3. Routes.ts: Only adds ACTIVITY: 'MoneyActivity' to the existing MONEY routes object. This is purely additive and doesn't affect any existing navigation routes.

  4. locales/en.json: Adds new strings for money activity - purely additive.

Why no E2E tags are needed:

  • No existing E2E tests cover the Money module (confirmed by searching for Money in e2e test files)
  • The moneyActivityMockDataEnabled feature flag is disabled by default (productionDefault: false), so the new activity functionality won't be triggered in E2E tests
  • No shared/critical components are modified (no TabBar, Browser, Confirmations, or other cross-cutting components)
  • The changes are self-contained within a new feature module
  • The Routes.ts change is purely additive and doesn't break existing navigation
  • No controller, Engine, or core infrastructure changes

The changes represent new feature development that is gated behind a disabled feature flag, making it safe to skip E2E tests for this PR.

Performance Test Selection:
No performance tests are needed. The changes are confined to the Money module which is a new feature area gated behind a disabled feature flag (moneyActivityMockDataEnabled with productionDefault: false). No changes to account lists, login flows, app startup, swap flows, or other performance-sensitive areas. The new components (MoneyActivityView, MoneyActivityList, MoneyActivityItem) are new additions not yet in production, so there's no regression risk for existing performance benchmarks.

View GitHub Actions results

Copy link
Copy Markdown

@cursor cursor bot left a comment

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 a1b8842. Configure here.

@sonarqubecloud
Copy link
Copy Markdown

@nickewansmith nickewansmith requested a review from Matt561 April 10, 2026 21:08
@nickewansmith nickewansmith enabled auto-merge April 10, 2026 22:15
@nickewansmith nickewansmith removed the request for review from a team April 10, 2026 22:24
);

/** Temporary flag: remote value is a boolean only. */
export const selectMoneyActivityMockDataEnabledFlag = createSelector(
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.

Nit/Non-blocking: We'll want to circle back and add minimum version validation to this flag.

@nickewansmith nickewansmith added this pull request to the merge queue Apr 10, 2026
Merged via the queue into main with commit e7ba37c Apr 10, 2026
62 of 63 checks passed
@nickewansmith nickewansmith deleted the MUSD-476-as-a-money-account-user-i-want-to-access-my-money-account-activity-via-the-money-account-homepage-so-that-i-can-see-card-deposit-and-other-activity-1 branch April 10, 2026 22:45
@github-actions github-actions bot locked and limited conversation to collaborators Apr 10, 2026
@metamaskbot metamaskbot added the release-7.74.0 Issue or pull request that will be included in release 7.74.0 label Apr 10, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

No QA Needed Apply this label when your PR does not need any QA effort. release-7.74.0 Issue or pull request that will be included in release 7.74.0 risk-low Low testing needed · Low bug introduction risk size-XL team-earn

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants