Skip to content

chore: v0.24-dev backports part 3 - #994

Merged
QuantumExplorer merged 40 commits into
v0.25-devfrom
chore/v024_backports_part_3
Apr 28, 2023
Merged

chore: v0.24-dev backports part 3#994
QuantumExplorer merged 40 commits into
v0.25-devfrom
chore/v024_backports_part_3

Conversation

@markin-io

@markin-io markin-io commented Apr 28, 2023

Copy link
Copy Markdown
Contributor

Issue being fixed or feature implemented

What was done?

Skipped js-drive PRs

How Has This Been Tested?

  • CI

Breaking Changes

Checklist:

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have added or updated relevant unit/integration/functional/e2e tests
  • I have made corresponding changes to the documentation

For repository code-owners and collaborators only

  • I have assigned this pull request to a milestone

shumkov and others added 30 commits April 28, 2023 12:58
Co-authored-by: Ivan Shumkov <ivan@shumkov.ru>
Co-authored-by: Anton Suprunchuk <anton.suprunchuk@gmail.com>
@markin-io
markin-io marked this pull request as ready for review April 28, 2023 12:44
@QuantumExplorer
QuantumExplorer merged commit 266cf52 into v0.25-dev Apr 28, 2023
@QuantumExplorer
QuantumExplorer deleted the chore/v024_backports_part_3 branch April 28, 2023 13:41
@thephez thephez added this to the v0.25.0 milestone Oct 11, 2023
romchornyi pushed a commit that referenced this pull request Sep 3, 2026
core_wallet_signed_payment_finalize called plain finalize_transaction, so a
host that set the restriction via core_wallet_tx_builder_use_only_added_inputs
and then submitted through the deferred (BIP70/BIP270) path had it accepted at
the FFI boundary and silently discarded at the finalizer: the funding account's
whole UTXO set was offered to selection after all, which is exactly the
too-many-inputs failure this branch exists to fix. Thread reservation_only
through, read off the reclaimed box rather than through the consumed raw
pointer, and say in the setter's doc that both finalizers honour it.

Add the workspace-level regression test the crossing lacked. key-wallet #994
covers add_funding_reservation_only on its own side, but the flag travels an
FFI struct field, a finalizer bool and a key-wallet call, and nothing here
failed if it were dropped anywhere along that path. The new case funds an
account with two UTXOs, seeds one, and asserts both that the build spends only
the seeded input and that a payment only the pair could cover FAILS - the half
that actually proves the second UTXO was never a candidate. Verified against a
mutant (add_funding_reservation_only -> add_funding): the test goes red.

Also correct the offered_accounts comment, which described a list that under
the flag holds accounts doing reservation bookkeeping and offering nothing.
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.

5 participants