Skip to content

test(wasm-utxo): Pearl AcidTest regtest integrationLocalRpc (CECHO-1806) - #344

Merged
manojkumar138 merged 1 commit into
masterfrom
manojkumar138/cecho-1806-wasm-utxo-pearl-regtest
Jul 29, 2026
Merged

test(wasm-utxo): Pearl AcidTest regtest integrationLocalRpc (CECHO-1806)#344
manojkumar138 merged 1 commit into
masterfrom
manojkumar138/cecho-1806-wasm-utxo-pearl-regtest

Conversation

@manojkumar138

@manojkumar138 manojkumar138 commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds Pearl (Duplex) live-node coverage in @bitgo/wasm-utxo, per Otto’s guidance on BitGoJS #9367 (superseded).

  • test/integrationLocalRpc/ — utxo-lib-style harness: spin up pearld (Docker or native via WASM_UTXO_PEARLD_BIN), run the shared AcidTest kitchen-sink withdrawal against RPC, commit fixtures.
  • Pearl-only fixtures in this PR; loop is coin-agnostic for later networks.
  • Not on CI — directory ignored by default mocha; local scripts only:
    • npm run test:integrationLocalRpc — offline fixture checks
    • npm run test:integrationLocalRpc:generate — live generate + write fixtures
  • PearlRegtest / CoinName tpearlreg (HRP rprl) — first-class regtest network (mirrors tbtcreg), so addresses use production encode/decode instead of a test bech32 shim.
  • AcidTest.createPsbt({ outpoints }) — allows real funded UTXOs instead of synthetic txid=0…0.

Local generate against native pearld 1.0.2 succeeded (p2trLegacy + p2trMusig2KeyPath funded, broadcast accepted). Fixture: fixtures/pearl/acidTest.fullsigned.json.

Test plan

  • Native pearld generate wrote fixtures/pearl/acidTest.fullsigned.json
  • npm run test:integrationLocalRpc passes (offline)
  • tpearlreg encodes mining addr as rprl1p… (matches --miningaddr)
  • Default mocha ignores test/integrationLocalRpc/**
  • CI Build and Test / wasm-utxo green on this push
  • Otto re-review after tpearlreg (addresses prior CHANGES_REQUESTED)

Refs

@manojkumar138
manojkumar138 requested a review from a team as a code owner July 29, 2026 10:17
@linear-code

linear-code Bot commented Jul 29, 2026

Copy link
Copy Markdown

CECHO-1806

Comment on lines +1 to +6
/**
* Pearl regtest addresses use HRP `rprl`, but wasm-utxo CoinName only has
* pearl/tpearl (prl/tprl). Encode/decode witness programs with the regtest HRP
* so pearld accepts the addresses.
*/
import { bech32m } from "bech32";

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add support for regtest pearl network in wasm-utxo instead

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done — added first-class Network::PearlRegtest / CoinName tpearlreg (HRP rprl), mirroring tbtcreg. Dropped the test-only bech32 shim; integrationLocalRpc now uses fromOutputScriptWithCoin(..., "tpearlreg").

…O-1806)

Live-node AcidTest harness under test/integrationLocalRpc/ (Docker or native
pearld), Pearl fixtures committed, CI-excluded. Adds PearlRegtest / tpearlreg
(HRP rprl) so regtest addresses use first-class network support, not a bech32 shim.

Co-authored-by: Cursor <cursoragent@cursor.com>
@manojkumar138
manojkumar138 force-pushed the manojkumar138/cecho-1806-wasm-utxo-pearl-regtest branch from e68c6b7 to 4ee1d85 Compare July 29, 2026 10:35
@manojkumar138
manojkumar138 enabled auto-merge July 29, 2026 10:38
@manojkumar138
manojkumar138 merged commit f3a6e22 into master Jul 29, 2026
12 of 13 checks passed
@manojkumar138
manojkumar138 deleted the manojkumar138/cecho-1806-wasm-utxo-pearl-regtest branch July 29, 2026 10:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants