MetaMask / MetaMask/metamask-mobile

Transaction data flow enhanced

Open
#5,770 3 comments 0 reactions 0 assignees View on GitHub
area-transactions team-confirmations-planning type-refactor
Dominant language
TypeScript
Stars
3k
Forks
1.7k
Avg merge
1d 14h
Merged PRs (30d)
669

Description

### **Description**
The transaction data doesn't have a single source of truth and the logic behind that should be all shared between mobile and extension.

### **Technical Details**
We save on our redux state temporary transaction data when we do a transaction that it's accessible by `state.transaction`, which we ended up always resetting or cleaning.

The proposal here it's to do a refactor and have a unique source of truth to the transaction data on the TransactionController.

### **Acceptance Criteria**
* Actual transaction be managed on the transaction controller
* All the transaction data should and only be accessible from the TransactionController.
* Transaction logic should live on the TransactionController

Contributor guide

Open the contributing guide

Research direction

Start by tracing the temporary transaction data stored in Redux at state.transaction and the existing TransactionController used by the mobile and extension flows. Identify where transaction data is reset, cleaned, or managed outside the controller. Done means the active transaction and its logic are managed by TransactionController, with no other access to transaction data.

Written by the indexing model from the issue text.

Assessment

Tech stack
react-native, typescript
Domain
mobile
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.