Skip to content

v0.5.5

@nel349 nel349 tagged this 11 Oct 09:35
For an unsealed transaction the wallet SDK signs the dApp's own
transaction again: its unshielded signer hands a full per-input list to
UnshieldedOffer.addSignatures, which appends, so each signature the dApp
attached comes back twice and the node refuses the transaction
("mismatch between number of inputs (1) and signatures (2)"). Seen on a
ledger-8 localnet with an agent's signed payment.

- When all of a transaction's unshielded inputs are signed, mn signs only
  its own balancing transaction.
- A transaction with some inputs signed and some not, or a signed one
  that still needs unshielded value from the wallet, is refused as
  InvalidRequest before the operator is asked.

Releases this with the Dust-freeze fix of the previous commit: on a
ledger-8 localnet the built bundle balanced and submitted a signed
payment that published 0.5.4 had the node refuse. The freeze itself does
not show on a localnet, which prices transactions at zero; the test that
runs the SDK's own coin choice on a real wallet state shows it.

Claude-Session: https://claude.ai/code/session_01XQWkwdzqCkXVWeFrvJZ8RQ
Assets 2
Loading