Repository navigation
v0.11.0
What's changed
Provider and signing security
- Provider approvals are now owned by the background, which persists the request, review, signing execution, and durable result; the popup only renders the review and submits a decision. Website requests are bound to origin, RPC method, wallet/address, session, and deadline, and authorization is rechecked before signing and before a result is exposed. (#382)
- Counterparty signing independently verifies PSBT prevouts and sidecar amounts/scripts before software or Trezor signing, maps each Trezor input to its verified derivation path, and enforces parsing resource ceilings with strict BIP370 transaction-modifiable semantics. (#381)
- PSBT handling is hardened after dependency updates: BIP-137 compressed/uncompressed key encoding is preserved with the upgraded noble recovery API, untrusted opaque PSBT fields are stripped, and malformed Taproot commitments and PSBTv2 round-trips are covered. (#380)
- Trezor provider PSBTs are supported: the external provider contract stays PSBT-based while Trezor Connect returns a raw transaction, every imported P2WPKH signature and the exact final transaction are verified independently, and dApps receive exact capability reporting so unsupported operations fail before approval. (#376)
- Connect returns a signed proof for supported Trezor addresses, and an explicitly granted Legacy/Native SegWit pair returns a proofs array covering both halves. (#375)
- A paired-address grant now covers both halves of the derivation index, so switching the active account between Legacy and SegWit no longer drops a connected site's pair. (#389)
- Provider transaction chains resolve wallet-owned outputs from just-broadcast transactions before public indexers catch up, trusting only exact transactions approved and signed for the same origin. (#369)
Marketplace
- One attach plus its exact dependent listing is recognized as a bounded batch and approved on a single screen. (#368)
- Buyer-selected attached delivery is supported for one-item checkouts, exact offer authorization, and unilateral seller acceptance; detached delivery remains the default. (#379)
- Exact offer approvals prove the platform fee, buyer funding, seller proceeds, and miner fee independently; a positive fee requires exactly two inputs and three outputs. (#383)
Swaps, wallets, and transactions
- Swap quotes port Core's pool quote algorithm to bigint and count pending mempool orders ahead of the swap; Auto slippage adds the mempool drop, floored at 0.5% and capped at 20%. (#386)
- New mnemonic wallets default to Native SegWit instead of Taproot. (#371)
- Taproot inscription reveal scripts above the legacy 10,000-byte cap are accepted under a separate 400,000-byte bound; the legacy caps and the 2 MB PSBT limit still apply. (#384)
- Consolidation outputs are sized from the script their address encodes to, so Taproot and bech32 outputs are estimated exactly. (#385)
- Counterparty compose compatibility: compressed and uncompressed recovery pubkeys in bare-multisig data outputs, message-less
movetoutxo, and explicit fairminterasset_parentpacking. (#367) - The MPMA nightly oracle recognizes round trips whose asset-group order changes after subasset longnames resolve to numeric IDs. (#372)
Maintenance
- Concurrent popup lifecycle ports are tracked, the Playwright CI image matches the test runner, pinned dependencies are updated with API migrations, and transitive
tomlvulnerabilities are fixed. (a040c6d, c6faa53, ff30c03, 2cb74a8)
Full changelog: v0.10.1...v0.11.0