chore: merge master into rel/latest (resolve abstract-utxo conflict)#8657
Merged
zahin-mohammad merged 26 commits intorel/latestfrom Apr 29, 2026
Merged
chore: merge master into rel/latest (resolve abstract-utxo conflict)#8657zahin-mohammad merged 26 commits intorel/latestfrom
zahin-mohammad merged 26 commits intorel/latestfrom
Conversation
…ation TICKET: CSHLD-24 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Update wasm-utxo dependency across multiple modules to version 4.8.0. Contains fixes for abstract-utxo bip322. Co-authored-by: llm-git <llm-git@ttll.de> Issue: BTC-0
…puts What changed: - make address optional in checkRecipient parameter type - add recipient.address guard before calling isScriptRecipient - pass explicit object to super.checkRecipient to satisfy its address: string type - add unit tests covering OP_RETURN and script-prefixed recipient cases Why: OP_RETURN recipients have no address field at runtime; calling isScriptRecipient(undefined) unconditionally invoked undefined.toLowerCase() causing a crash when approving pending approvals containing OP_RETURN outputs. TICKET: WAL-826 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
In browsers (webpack), importing @bitgo/wasm-mps resolves to the --target bundler ESM build which has a race condition between webpack's async WASM instantiation and __wbg_set_wasm being called. This causes wasm.ed25519_dkg_round0_process to be undefined when initDkg() runs. Mirror the ECDSA pattern in ecdsa-dkls/dkg.ts: detect browser via `typeof window !== 'undefined'` (excluding Electron via window.process checks), then use @bitgo/wasm-mps/web which exposes an explicit init() function — guaranteed ready after await. Adds a local .d.ts shim for @bitgo/wasm-mps/web until WCI-250 publishes the ./web subpath export with its own types. Ticket: WCI-251
feat(sdk-coin-eth): add registerWithCoinMap for dynamic token registration
Adds a `recovery-mode` workflow_dispatch input that publishes only the versions missing from npm (via `lerna publish from-package`) when a prior release left npm in a partial-publish state. Pins the checkout to a SHA captured by a pre-flight job so the publish cannot drift from what the env reviewer approved, asserts the SHA up front, and verifies post-publish that every public package version on rel/latest is now on the registry. Ticket: WCN-308
feat(ci): add recovery-mode to npmjs-release workflow
fix(sdk-lib-mpc): use @bitgo/wasm-mps/web in browser to fix EdDSA MPCv2 DKG TypeError
feat(abstract-utxo): bump wasm-utxo to 4.8.0
Introduces the DSG (Distributed Sign Generation) class for EdDSA MPCv2 using the @bitgo/wasm-mps WASM bindings. The class mirrors the existing DKG pattern with explicit state management and session export/restore support for server-side persistence across rounds. - Add `DSG` class with 4-round signing protocol state machine (Init → WaitMsg1 → WaitMsg2 → WaitMsg3 → Complete) - Add `DsgState` enum to types.ts - Export `EddsaMPSDsg` namespace from index.ts - Add `runEdDsaDSG` test helper to util.ts - Add unit tests covering full 2-of-3 signing, session restore, message serialization, error handling, and derivation paths Ticket: WCI-164
feat(statics): add OFC coins for kavacosmos and dydxcosmos Go Accounts
Extend explainPsbtWasm to count valid signatures per input: - Add scriptId to ExplainedInput (from parseTransactionWithWalletKeys) - Add signedBy map showing validation status for each key - Extract BIP-322 messages with bip322.getBip322Message() - Count signatures via bip322.verifyBip322PsbtInput() Replace BIP-322 test fixtures with dynamic PSBT generation using wasm-utxo. Remove fixtures/bip322/fixtures.ts and inline PSBT construction directly in tests. Call explainPsbtWasm with BitGoPsbt instances instead of serializing via coin.explainTransaction. Remove utxolib dependency from BIP-322 tests. Use @bitgo/wasm-utxo directly for key generation, address creation, and signature verification. Rewrite p2trMusig2 sighashType test as pure wasm-utxo round-trip. Add cross-library compatibility test verifying utxolib-created BIP-322 PSBTs can be signed by wasm-utxo and validated by utxolib. Issue: BTC-2650 Co-authored-by: llm-git <llm-git@ttll.de>
feat: PR from asset-metadata-service for token onboardings
Node.js 20 actions are deprecated; forced migration to Node.js 24 on June 2, 2026. Ticket: DX-496
feat(abstract-utxo): enhance BIP-322 verification in wasm-utxo
ci(workflows): upgrade aws-actions/configure-aws-credentials to v6
feat(sdk-lib-mpc): add EdDSA DSG MPS class
Revert "feat: implement BitGo signing in SDK"
Resolve abstract-utxo/package.json conflict — keep @bitgo/utxo-ord ^1.29.1 (from rel/latest publish) and @bitgo/wasm-utxo ^4.8.0 (from master bump). Refs #0
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 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
masterintorel/latestto clear the merge conflict blocking the nextrel/latest→mastersyncmodules/abstract-utxo/package.json: kept@bitgo/utxo-ord ^1.29.1(fromrel/latest's publish) and@bitgo/wasm-utxo ^4.8.0(frommaster's bump in feat(abstract-utxo): bump wasm-utxo to 4.8.0 #8647). Both are the newer of the two sides.Test plan
rel/latest→masterPR has no conflictsRefs #0