Bitcoin Core Github
44 subscribers
120K links
Download Telegram
πŸ’¬ mzumsande commented on issue "Shallow invalid forks + ActivateBestChainStep result in overly aggressive mempool filtering":
(https://github.com/bitcoin/bitcoin/issues/32838#issuecomment-3020279448)
Mabe we could create a `DisconnectedBlockTransactions` pool in `ActivateBestChain()` that is passed to each `ActivateBestChainStep()` instead of having a separate one in each `ActivateBestChainStep()` call, and then only call `MaybeUpdateMempoolForReorg` after `ABC` has made enough progress. We'd have to deal with blocks from multiple separate disconnections within one pool then (meaning duplicates/ possbile conflicts, because we could go into multiple forks, try to connect blocks, fail at some
...
πŸ“ average-gary opened a pull request: "test: Enhance GetTxSigOpCost tests for coinbase transactions"
(https://github.com/bitcoin/bitcoin/pull/32840)
Added assertions to the GetTxSigOpCost test cases to verify that the witness of a coinbase transaction is not considered in the signature operation cost calculations.

Using spendingTx.vin[0].prevout.SetNull() we create a coinbase transaction that evaluates to true for IsCoinbase(). Doing this to transactions (spendingTx in this case) that evaluate to a non-zero sigop output, we more concretely test that the witness of a coinbase transaction is not taken into account for SigOp maths.

------
...
πŸ€” ismaelsadeeq reviewed a pull request: "Broadcast own transactions only via short-lived Tor or I2P connections"
(https://github.com/bitcoin/bitcoin/pull/29415#pullrequestreview-2972293733)
I was experimenting with privacy on Bitcoin core and see this work.
Kudos πŸŽ‰ and thanks for your work to improve privacy

Great summary by @kdmukai

Did some manual tests on signet using the script provided; it was smooth on the happy path
<details>
<summary>See logs</summary>

```terminal
2025-06-30T17:06:38Z [privatebroadcast:info] P2P handshake completed, sending INV for txid=fdb1884dd42d940c3edd786487e45311a2d5f2328cf7349fa4ad5f29f5449c96, wtxid=862c319f69d047db646a375b2287a5116
...
πŸ’¬ ismaelsadeeq commented on pull request "Broadcast own transactions only via short-lived Tor or I2P connections":
(https://github.com/bitcoin/bitcoin/pull/29415#discussion_r2175685307)
This should be in doc?
πŸ’¬ pablomartin4btc commented on pull request "wallet: Fix relative path backup during migration.":
(https://github.com/bitcoin/bitcoin/pull/32273#discussion_r2175739001)
nit: extra line here?
```suggestion
assert_equal(magic, BTREE_MAGIC)

def test_blank(self):
```
πŸ€” ishaanam reviewed a pull request: "wallet: Keep track of the wallet's own transaction outputs in memory"
(https://github.com/bitcoin/bitcoin/pull/27286#pullrequestreview-2972194802)
reACK 215e5999e2070a38c68e343c5c3f1dc37d567f58
πŸ’¬ ishaanam commented on pull request "wallet: Keep track of the wallet's own transaction outputs in memory":
(https://github.com/bitcoin/bitcoin/pull/27286#discussion_r2175625170)
In 5cc32ee2a7addb38ae4a4c97d306d0c5d9cc2d5e "test: Test for balance update due to untracked output becoming spendable"

very minor nit: it is not clear to me as to why the time needs to be moved forward for this test to be effective, so perhaps a sentence could be added to explain that?
πŸ€” w0xlt reviewed a pull request: "wallet: Keep track of the wallet's own transaction outputs in memory"
(https://github.com/bitcoin/bitcoin/pull/27286#pullrequestreview-2972458146)
reACK https://github.com/bitcoin/bitcoin/pull/27286/commits/215e5999e2070a38c68e343c5c3f1dc37d567f58
πŸ’¬ kevkevinpal commented on pull request "threading: use correct mutex name in reverse_lock fatal error messages":
(https://github.com/bitcoin/bitcoin/pull/32829#issuecomment-3020576505)
So one thing I noticed is that the tests passed, but the previous commit [85c2848](https://github.com/bitcoin/bitcoin/pull/32829/commits/85c2848eb575f4abaa81fdd4e8f3b2048693dd98) had failures but CI / test each commit (pull_request) passed

not sure this is a followup someone can look at to fix?
πŸ“ instagibbs opened a pull request: "feature_taproot: sample tx version border values more"
(https://github.com/bitcoin/bitcoin/pull/32841)
Currently if the version 3 is selected for an otherwise standard spender, the test will fail. It's unlikely but possible, so change the test to update expectations and sample more aggressively on border values to instigate failures much quicker in the future if another version is made standard.
πŸ“ theStack opened a pull request: "doc: add `/spenttxouts` to REST-interface.md"
(https://github.com/bitcoin/bitcoin/pull/32842)
Seems like adding the `spenttxouts` endpoint to the REST interface description was forgotten in #32540.
πŸ€” pablomartin4btc reviewed a pull request: "doc: add `/spenttxouts` to REST-interface.md"
(https://github.com/bitcoin/bitcoin/pull/32842#pullrequestreview-2972854934)
ACK dd99cedc0bfe7d7eee0f543bb27dab005c426c66
πŸ’¬ murchandamus commented on issue "Cleanup CFeeRate constructor (sat/vB vs BTC/kvB)":
(https://github.com/bitcoin/bitcoin/issues/23129#issuecomment-3020948847)
@willcl-ark: I don’t think this is resolved. The state in `src/policy/feerate.cpp` still matches @maflcko’s comment from the linked PR that predates this issue by a day. I think #32750 is making some progress towards improvement, though.
πŸ“ mzumsande opened a pull request: "validation: invalid block handling followups"
(https://github.com/bitcoin/bitcoin/pull/32843)
Some follow-ups from #31405:

- avoid duplicate recalculation of failure flags and `m_best_header` in `InvalidateBlock()`, which already does the accounting for these while disconnecting blocks, so recalcuation is not needed in the final `InvalidChainFound` call (https://github.com/bitcoin/bitcoin/pull/31405#discussion_r2138368309)
- make it clearer that all block indexes with a `CBlockIndexWorkComparator` score at least as good as the tip (and no others) are expected in `setBlockIndexCandi
...
πŸ‘ theStack approved a pull request: "test: Fix wait_for_getheaders() call in test_outbound_eviction_blocks_relay_only()"
(https://github.com/bitcoin/bitcoin/pull/32823#pullrequestreview-2972945567)
lgtm ACK ec004cdb86e6471915e1033f390c76ee0428e415 :hash:

The second commit is a test bugfix very similar to #32742 / dd8447f70faf6419b4617da3c1b57098e9cd66a6 and should be backported (fwiw, I checked all other `wait_for_...` calls with hash parameters in this test file and think we caught them all now). The other commit improves the code comments w.r.t. consistent peer/node naming and getting rid of the "we" phrasing, agree that this is clearer now.
πŸ“ luke-jr opened a pull request: "RPC/txoutproof: Support including (and verifying) proofs of wtxid"
(https://github.com/bitcoin/bitcoin/pull/32844)
Feature requested by @SomberNight for Electrum's Lightning stuff. (Please confirm this does what you need)

Unfortunately WIP because the wtxid merkle root calculation doesn't match and I don't have time to figure out why not yet (maybe after concept ACK? or if anyone else wants to take a look...)

Mostly backward compatible, but a segwit-enabled proof will verify the generation tx in old versions.
πŸ“ pablomartin4btc opened a pull request: "rpc, test: Fix JSON parsing errors in RPC calls (unloadwallet and getdescriptoractivity) raising RPC_INVALID_PARAMETER with appropriate description"
(https://github.com/bitcoin/bitcoin/pull/32845)
Currently, `unloadwallet` RPC call fails with a JSON parsing error when no `wallet_name` argument is provided. This behavior is misleading because the error originates from a low-level JSON type mismatch, rather than clearly indicating that the wallet name or RPC endpoint (`-rpcwallet=...`) is missing. Also, found out that the [issue](https://github.com/bitcoin/bitcoin/pull/13111#issuecomment-398831543) was noticed during its implementation but never addressed.

In addition, I've verified all
...
πŸ’¬ davidgumberg commented on pull request "wallet: Fix relative path backup during migration.":
(https://github.com/bitcoin/bitcoin/pull/32273#discussion_r2176170471)
Fixed, thanks.
πŸ’¬ SomberNight commented on pull request "RPC/txoutproof: Support including (and verifying) proofs of wtxid":
(https://github.com/bitcoin/bitcoin/pull/32844#discussion_r2176171672)
Is the cause of the mismatch that you thought the scriptPubKey directly contains the wtxid tree root?
It actually contains `Double-SHA256(witness root hash|witness reserved value)`
So you also have to extract the `witness reserved value` from the coinbase input witness.
see https://github.com/bitcoin/bips/blob/77b0bb297ad4e4e6b04b2c078c5e3b620a7090e2/bip-0141.mediawiki#commitment-structure