Skip to content

fix: MUSD-181 prevent dedupliation of transactions with the 0x0 hash#24289

Merged
Matt561 merged 1 commit intomainfrom
fix/musd-181-musd-conversion-are-not-appearing-in-the-activity-list
Jan 7, 2026
Merged

fix: MUSD-181 prevent dedupliation of transactions with the 0x0 hash#24289
Matt561 merged 1 commit intomainfrom
fix/musd-181-musd-conversion-are-not-appearing-in-the-activity-list

Conversation

@Matt561
Copy link
Copy Markdown
Contributor

@Matt561 Matt561 commented Jan 7, 2026

Description

This fix prevents filtering of transactions with the "0x0" hash in the activity view.

Reason for change

mUSD conversions were being filtered out and hidden on the activity view since they all have the 0x0 hash.

Changelog

CHANGELOG entry: prevent filtering of transactions with 0x0 hash in activity view

Related issues

Fixes: MUSD-181: MUSD conversions aren't appearing in activity list

Manual testing steps

Feature: Transaction history preserves distinct outgoing transactions with placeholder hashes

  Scenario: user views transaction history with multiple outgoing transactions that have a placeholder hash
    Given user has multiple outgoing transactions recorded in activity with a placeholder hash value ("0x0")

    When user opens the activity / transaction history list
    Then each of those outgoing transactions is displayed as a separate entry

Screenshots/Recordings

Before

Single mUSD Conversion shown in activity list despite user performing multiple conversions
image

After

All mUSD Conversions displayed in activity list
image

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

Prevents unintended filtering of transactions that use the placeholder hash 0x0.

  • Updates filterDuplicateOutgoingTransactions to treat hash === '0x0' as absent so these entries are never deduped
  • Adds a unit test in utils.test.ts verifying transactions with 0x0 hash are preserved

Written by Cursor Bugbot for commit 3969d65. This will update automatically on new commits. Configure here.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Jan 7, 2026

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.

@Matt561 Matt561 marked this pull request as ready for review January 7, 2026 16:43
@Matt561 Matt561 requested a review from a team as a code owner January 7, 2026 16:43
@github-actions github-actions bot added the size-S label Jan 7, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Jan 7, 2026

🔍 Smart E2E Test Selection

  • Selected E2E tags: SmokeWalletUX, SmokeAssets
  • Risk Level: low
  • AI Confidence: 85%
click to see 🤖 AI reasoning details

The PR makes a small, targeted change to the filterDuplicateOutgoingTransactions function in app/components/UI/Transactions/utils.ts. The change adds a condition to treat placeholder hash '0x0' as "no hash" to prevent incorrectly deduplicating unrelated transaction metas (specifically MetaMask Pay/musdConversion transactions).

Key observations:

  1. Scope: The change is limited to transaction display logic - specifically how duplicate transactions are filtered in the Activity/Transactions view
  2. Usage: The function is used in UnifiedTransactionsView.tsx and app/components/UI/Transactions/index.js for filtering confirmed transactions
  3. Nature: This is a defensive fix that preserves more transactions rather than filtering them out, reducing risk of data loss
  4. Testing: A unit test was added to verify the new behavior

The change affects wallet UX (transaction list display) and asset-related views (transaction history). Selected SmokeWalletUX for wallet user experience testing and SmokeAssets for transaction/asset display verification. The risk is low because:

  • It's a small, well-scoped change
  • It's defensive (keeps transactions rather than removing them)
  • It has unit test coverage
  • It doesn't affect core transaction processing, only display filtering

View GitHub Actions results

@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud bot commented Jan 7, 2026

@Matt561 Matt561 enabled auto-merge January 7, 2026 17:17
@Matt561 Matt561 added this pull request to the merge queue Jan 7, 2026
Merged via the queue into main with commit b94b324 Jan 7, 2026
111 checks passed
@Matt561 Matt561 deleted the fix/musd-181-musd-conversion-are-not-appearing-in-the-activity-list branch January 7, 2026 17:43
@github-actions github-actions bot locked and limited conversation to collaborators Jan 7, 2026
@metamaskbot metamaskbot added the release-7.62.0 Issue or pull request that will be included in release 7.62.0 label Jan 7, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

release-7.62.0 Issue or pull request that will be included in release 7.62.0 size-S team-earn

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants