fix: Fix invalid state causing migration 88 to fail (#26397)#26401
Merged
danjm merged 1 commit intoVersion-v12.0.2from Aug 13, 2024
Merged
fix: Fix invalid state causing migration 88 to fail (#26397)#26401danjm merged 1 commit intoVersion-v12.0.2from
danjm merged 1 commit intoVersion-v12.0.2from
Conversation
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** We have found evidence that migration 88 is failing for some users due to a `null` key in the `TokensController.allTokens` state. The migration has been updated to delete any invalid `null`-keys prior to migrating it, preventing the error. [](https://codespaces.new/MetaMask/metamask-extension/pull/26397?quickstart=1) ## **Related issues** Fixes #25938 ## **Manual testing steps** The unit tests demonstrate the affected scenario fairly well. We addressed the "null key" case for a variety of different parts of state, but specifically the one we are seeing in prod is the `allTokens` state having a `null` key. ## **Screenshots/Recordings** N/A ## **Pre-merge author checklist** - [x] I've followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Extension Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **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.
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## Version-v12.0.2 #26401 +/- ##
===================================================
+ Coverage 65.69% 65.70% +0.01%
===================================================
Files 1370 1370
Lines 54705 54723 +18
Branches 14235 14253 +18
===================================================
+ Hits 35935 35953 +18
Misses 18770 18770 ☔ View full report in Codecov by Sentry. |
Collaborator
Builds ready [434bd9c]
Page Load Metrics (49 ± 4 ms)
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
This is a cherry-pick of #26397. Original description:
Description
We have found evidence that migration 88 is failing for some users due to a
nullkey in theTokensController.allTokensstate. The migration has been updated to delete any invalidnull-keys prior to migrating it, preventing the error.Related issues
Fixes #25938
Manual testing steps
The unit tests demonstrate the affected scenario fairly well. We addressed the "null key" case for a variety of different parts of state, but specifically the one we are seeing in prod is the
allTokensstate having anullkey.Screenshots/Recordings
N/A
Pre-merge author checklist
Standards.
Pre-merge reviewer checklist