fix: transaction listener for mobile #7139
Merged
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.
Explanation
Currently, the Phishing Controller is correctly listening to the Transaction Controller's state changes and scanning the received tokens within a transaction correctly. This feature does not work correctly in the Mobile due to differences in how state changes are emitted. This fix aims to correct for that by also listening for state changes that reveal the same information.
Checklist
Note
Make the transaction state change listener also handle
transactions[*].simulationDatapatches to trigger bulk token scans; update tests and changelog.#isSimulationDataPatchto detecttransactions[*].simulationDatapatches.#onTransactionControllerStateChangeto extract tokens when either the wholetransactionor itssimulationDatais patched; skip onremoveand scan by chain.src/PhishingController.test.ts):['transactions', i, 'simulationData']and maintain existing behaviors (no-op onremove, no tokens, default params, error handling).Written by Cursor Bugbot for commit 0613c52. This will update automatically on new commits. Configure here.