[bitcoin-wallet-snap] Add support for `keyring_createAccounts`

Open
#29 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Quiet
Tech stack
typescript
Domain
api, backend

Research direction

Start with the Bitcoin snap's existing keyring methods and the linked keyring_createAccounts signature, then compare the Solana snap PR. Inspect controller-init/multichain/multichain-account-service-init.ts for the extension client and locate the corresponding configuration for the other client. Done means the Bitcoin snap supports the method, a new version is released, and both clients enable batched account creation.

Written by the indexing model from the issue text.

Description

Description

As part of the performance improvements around account management, the keyring API now supports a new method to allow the creation of multiple accounts in one request via the method keyring_createAccounts (@metamask/keyring-api version 22.0.0), this new RPC method accepts a batch request — either a single BIP-44 index or an inclusive index range — and creates all accounts in one call.

This ticket requires the Bitcoin snap to also support the method keyring_createAccounts and update the clients configuration to enable account creation batching. To do so, go to the file controller-init/multichain/multichain-account-service-init.ts (extension client case) and update the Bitcoin provider configuration to set createAccounts > batched to true

Acceptance Criteria

  1. The Bitcoin snap now supports keyring_createAccounts
  2. A new version is released and both clients are updated to use it
  3. Set the createAccounts > batched configuration value to true in both clients

References

Dominant language
TypeScript
Stars
1
Forks
2
Avg merge
1d 21h
Merged PRs (30d)
105

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from MetaMask/internal-snaps

All issues in MetaMask/internal-snaps

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.