Wallet: gettransaction(txid).details changes after confirmation of RBF replacement #34064

issue husstege-e openend this issue on December 12, 2025
  1. husstege-e commented at 7:53 pm on December 12, 2025: none

    Is there an existing issue for this?

    • I have searched the existing issues

    Current behaviour

    For a replaced transaction (txA), the output of gettransaction(txA, true).details changes after the replacement transaction (txB) is confirmed.

    Specifically, a ‘receive’ entry present after bumpfee disappears once txB is confirmed, even though the queried txid remains txA.

    After confirmation, repeated calls are stable.

    Expected behaviour

    For a given txid, gettransaction(txid).details should be stable once the replacement transaction has been confirmed, or at minimum should not retroactively add or remove details entries in a way that changes accounting interpretation for the same transaction id.

    Steps to reproduce

    1. Create a transaction (txA) from a descriptor wallet.
    2. Replace txA using bumpfee, creating txB.
    3. Query gettransaction(txA, true) and record details.
    4. Mine blocks to confirm txB.
    5. Query gettransaction(txA, true) again and compare details.

    A minimal reproduction package and proof artifacts are attached below.

    x3_mini_package.tar.gz

    SHA-256 (x3_mini_package.tar.gz): 47413632eab190a2c2477b0d2f8128bc956326ae3765d8fbf6b2a9da5046a617

    Relevant log output

    No debug.log output is required; the issue is observable via wallet RPC output.

    How did you obtain Bitcoin Core

    Compiled from source

    What version of Bitcoin Core are you using?

    27.0

    Operating system and version

    Ubuntu 22.04 LTS (regtest environment)

    Machine specifications

    Standard x86_64 Linux host, SSD storage, regtest environment.

  2. maflcko added the label Wallet on Dec 13, 2025
  3. maflcko added the label RPC/REST/ZMQ on Dec 13, 2025
  4. achow101 commented at 9:43 pm on December 22, 2025: member
    This is expected behavior. When a transaction becomes conflicted (i.e. a conflict is confirmed in the main chain), we don’t want to show any details that might make the user think they have more or less money than they actually do.

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2025-12-23 00:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me