Uh oh!
There was an error while loading. Please reload this page.
feat: added two new utils for mnemonic/english-word-indices conversion - #300
Merged
Conversation
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ 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 ce170e3. Configure here.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
cryptodev-2s
approved these changes
Aug 13, 2026
Uh oh!
There was an error while loading. Please reload this page.
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 freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
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.

Summary
Mnemonic-to-index conversion currently lives in app-specific code (for example MetaMask Mobile) and is not available as a shared, browser-safe helper in
@metamask/utils. Callers that store BIP-39 phrases as little-endian Uint16 wordlist indices have to duplicate that logic.This PR adds two utilities in src/mnemonic.ts:
Both use the English wordlist from
@metamask/scure-bip39. No Node Buffer is used, so the helpers work in browsers.Note
Medium Risk
New utilities operate on seed-phrase representations; invalid words are silently encoded as 65535 rather than rejected, which could surprise callers handling recovery phrases.
Overview
Adds shared browser-safe helpers for converting between English BIP-39 mnemonics and little-endian
Uint16wordlist indices stored in aUint8Array, so callers no longer need app-local copies of this logic.uint8ArrayToMnemonicdecodes those bytes into a space-separated mnemonic (throws on empty input).convertMnemonicToWordlistIndicesdoes the reverse via@metamask/scure-bip39’s English wordlist; words not in the list are encoded as index -1 (65535asUint16). Both are re-exported from the package entrypoints, with tests and changelog;@metamask/scure-bip39is added as a dependency.Reviewed by Cursor Bugbot for commit e6ce3df. Bugbot is set up for automated code reviews on this repo. Configure here.