theseus/bundled-addons/bchwallet/lib
Local Dev 48cb497f59 feat(theseus/aegis): BTC send from BIP44 + BIP86 addresses
Aegis's Bitcoin adapter can now sign transactions from every BIP44/49/84/86
address it derives. Receive already worked on all four in the previous rev
— this closes the send side.

- BIP44 (legacy P2PKH, 1…): signAndBroadcast now fetches each spent UTXO's
  parent transaction via blockchain.transaction.get(txid, false) and hands
  the raw hex to PSBT as nonWitnessUtxo. Prev-tx calls fan out in parallel
  with Promise.all so a multi-input legacy send doesn't serialize the wait.
- BIP86 (Taproot key-path, bc1p…): signInput now uses a tap-tweaked
  signer — the internal ECPair, tweaked with sha256("TapTweak" ||
  internalPubkey) via ECPair.tweak(). bitcoinjs-lib matches the tweaked
  pubkey against the on-chain output key and signs with schnorr. The
  input carries tapInternalKey so the PSBT layer knows it's a key-path
  spend (no leaf script).
- The plan-time "not yet in this rev" refusal is gone. paymentFor()
  returns send: "p2pkh" / "p2tr" for the two families; every path in
  the picker signs today.
- Fee vsize model already covered p2pkh (148 vB per input) and p2tr
  (58 vB per input) — unchanged.
- Verified in scratchpad/verify-btc-send.mjs: all four families
  produce a fully-finalized wire tx (bitcoinjs-lib refuses to
  finalize an invalid signature, so a valid extractTransaction()
  result is proof the signing path is correct). Vsize per family:
  BIP44 222 vB, BIP49 165 vB, BIP84 141 vB, BIP86 142 vB — all
  match the input-count/vsize model in this file's fee estimator.
2026-09-07 21:55:44 +02:00
..
dgb feat(theseus/aegis): DGB adapter on @dgb-wallet/{core,psbt} vendored packages 2026-09-07 02:19:44 +02:00
sia feat(theseus/aegis): fold Sia into the addon; add DGB (BIP84 native SegWit) 2026-09-07 01:56:25 +02:00
base58check.js feat(theseus/aegis): multi-wallet + Tron mainnet + Tron Nile in the bundled addon 2026-09-06 22:00:27 +02:00
cashaddr.js feat(theseus/bchwallet): receive + history — vault-derived keys, cashaddr, QR, electrum 2026-09-06 02:46:41 +02:00
chain-bch.js feat(theseus/aegis): SVG coin logos, two-step coin/network picker, BCH Chipnet 2026-09-07 01:07:31 +02:00
chain-btc.js feat(theseus/aegis): BTC send from BIP44 + BIP86 addresses 2026-09-07 21:55:44 +02:00
chain-dgb.js feat(theseus/aegis): DGB adapter on @dgb-wallet/{core,psbt} vendored packages 2026-09-07 02:19:44 +02:00
chain-eth.js feat(theseus/aegis): Ethereum + Solana adapters, DGB address-family picker, Aegis-branded shield 2026-09-07 20:31:27 +02:00
chain-sia.js feat(theseus/aegis): fold Sia into the addon; add DGB (BIP84 native SegWit) 2026-09-07 01:56:25 +02:00
chain-sol.js feat(theseus/aegis): Ethereum + Solana adapters, DGB address-family picker, Aegis-branded shield 2026-09-07 20:31:27 +02:00
chain-tron.js feat(theseus/aegis): multi-wallet + Tron mainnet + Tron Nile in the bundled addon 2026-09-06 22:00:27 +02:00
electrum.js feat(theseus/bchwallet): receive + history — vault-derived keys, cashaddr, QR, electrum 2026-09-06 02:46:41 +02:00
keys.js feat(theseus/bchwallet): receive + history — vault-derived keys, cashaddr, QR, electrum 2026-09-06 02:46:41 +02:00
tx.js feat(theseus/bchwallet): receive + history — vault-derived keys, cashaddr, QR, electrum 2026-09-06 02:46:41 +02:00
wallet.js feat(theseus/bchwallet): receive + history — vault-derived keys, cashaddr, QR, electrum 2026-09-06 02:46:41 +02:00