Bitcoin Core Github
44 subscribers
121K links
Download Telegram
💬 achow101 commented on pull request "[IBD] multi-byte block obfuscation":
(https://github.com/bitcoin/bitcoin/pull/31144#issuecomment-3091292177)
ACK 248b6a27c351690d3596711cc36b8102977adeab
💬 lifofifoX commented on pull request "Reduce minrelaytxfee to 100 sats/kvB":
(https://github.com/bitcoin/bitcoin/pull/32959#issuecomment-3091388547)
> A short while ago I sent an RBF with a 0.5 sat/vB fee, waited 30 minutes, and it still hadn’t reached mempool.space’s node

I believe that's because mempool.space nodes did not lower `incrementalrelayfee` through [config](https://github.com/mempool/mempool/blob/master/production/bitcoin.conf#L23C1-L23C14).
📝 b-l-u-e opened a pull request: "rpc: Fix internal bug in descriptorprocesspsbt when encountering invalid signatures"
(https://github.com/bitcoin/bitcoin/pull/33014)
## Summary
Fixes #32849 - Replace `CHECK_NONFATAL` with proper error handling in `descriptorprocesspsbt` RPC to prevent internal bug assertions when encountering invalid Schnorr signatures.

## Problem
When `descriptorprocesspsbt` encounters a PSBT with invalid signatures (e.g., invalid Schnorr signatures with SIGHASH_SINGLE | ANYONECANPAY flags), it triggers an internal bug assertion instead of returning a user-friendly error message.

## Solution
Replace the `CHECK_NONFATAL(FinalizeAndE
...
🚀 achow101 merged a pull request: "[IBD] multi-byte block obfuscation"
(https://github.com/bitcoin/bitcoin/pull/31144)
💬 ajtowns commented on pull request "Bump SCRIPT_VERIFY flags to 64 bit":
(https://github.com/bitcoin/bitcoin/pull/32998#issuecomment-3091891676)
> Minified this is:

I don't think you need the `git fetch; git checkout` here -- you get the same error with that command (dropping the `/bitcoin`) on master afaics?
💬 l0rinc commented on pull request "[IBD] multi-byte block obfuscation":
(https://github.com/bitcoin/bitcoin/pull/31144#issuecomment-3091927892)
Thanks a lot @maflcko, @ryanofsky, @hodlinator and @achow101 for all the reviews and reproducers and suggestions!
💬 stwenhao commented on pull request "Reduce minrelaytxfee to 100 sats/kvB":
(https://github.com/bitcoin/bitcoin/pull/32959#issuecomment-3091997169)
> you can't force people to pay higher fees unless it's a consensus rule

I think even if consensus rules would dictate fees, then it would still be possible to bypass them. For example: users can sign a given transaction, only if the next one would send them their coins back. Which means, that if free transactions would be consensus rule, then users would use additional anchor-like outputs to pay to miners. And if 100% fee transactions would be required by consensus, then miners could still s
...
💬 ArmchairCryptologist commented on pull request "Reduce minrelaytxfee to 100 sats/kvB":
(https://github.com/bitcoin/bitcoin/pull/32959#issuecomment-3092171983)
> When we have 1 sat/vB, then miners are guaranteed to get at least 0.01 BTC in fees per block

This is only correct if there are enough 1+ sat/vB transactions to fill the block. Miners are free to set their own minimum fee policy, and if some "fee market bidders" (transactors) are unwilling to pay 1 sat/vB and some "fee market buyers" (miners) are willing to mine at less than 1 sat/vB, miners who aren't willing to mine at less than 1 sat/vB blocks would be mining less-than-full blocks instead
...
👍 TheCharlatan approved a pull request: "init: [gui] Avoid UB/crash in InitAndLoadChainstate"
(https://github.com/bitcoin/bitcoin/pull/32987#pullrequestreview-3035308818)
ACK fac90e5261b811739ada56e06ea793a12f9c2c3d
💬 Eunovo commented on pull request "wallet/rpc: fix listdescriptors RPC fails to return descriptors with private key information when wallet contains descriptors missing any key":
(https://github.com/bitcoin/bitcoin/pull/32471#discussion_r2217261456)
`ToPrivateString` will be called on a non-watch-only wallet when the user tries RPC `listdescriptors[private=true]`. In this case, `has_priv_key` will be `false` and the RPC call should fail as expected.
⚠️ fanquake opened an issue: "intermittent timeout in wallet_signer.py : sendall timed out"
(https://github.com/bitcoin/bitcoin/issues/33015)
https://cirrus-ci.com/task/6466141373071360?logs=ci#L1714:
```bash
[17:24:42.699] node1 2025-07-18T21:24:35.153536Z [scheduler] [net.cpp:2387] [void CConnman::DumpAddresses()] [net] Flushed 0 addresses to peers.dat 0ms
[17:24:42.699] node0 2025-07-18T21:24:35.182594Z [scheduler] [net.cpp:2387] [void CConnman::DumpAddresses()] [net] Flushed 0 addresses to peers.dat 1ms
[17:24:42.699] test 2025-07-18T21:24:41.997879Z TestFramework (ERROR): Called Process failed with 'error: timeout on tran
...
💬 DerEwige commented on pull request "Reduce minrelaytxfee to 100 sats/kvB":
(https://github.com/bitcoin/bitcoin/pull/32959#issuecomment-3092301624)
What about rpc calls that currently only alow minimum value of 1 sat/vb?

eg: https://developer.bitcoin.org/reference/rpc/bumpfee.html
Should those endpoints be changed at the same time as the min relay fee?
📝 bigshiny90 opened a pull request: "test: Add functional tests for blockreconstructionextratxn"
(https://github.com/bitcoin/bitcoin/pull/33016)
This adds tests for the `-blockreconstructionextratxn` parameter which controls the extra transaction pool used for compact block reconstruction.

Uses RBF transaction pairs to populate the pool since that's a straightforward way to get transactions into the extra pool - send an original, then replace it with higher fee, and the original ends up in the extra pool.

Note: Targeting 29.x because the extra transaction pool eviction behavior tested here doesn't currently work on master.
🤔 Marodero56 reviewed a pull request: "test: Add functional tests for blockreconstructionextratxn"
(https://github.com/bitcoin/bitcoin/pull/33016#pullrequestreview-3035442509)
Hello
🤔 Marodero56 reviewed a pull request: "test: Add functional tests for blockreconstructionextratxn"
(https://github.com/bitcoin/bitcoin/pull/33016#pullrequestreview-3035442705)
Hello 👋
💬 kurapika007 commented on pull request "Reduce minrelaytxfee to 100 sats/kvB":
(https://github.com/bitcoin/bitcoin/pull/32959#issuecomment-3092464118)

> In general, low-fee transactions should be batched, and pushed on-chain as high-fee transactions. Which means, that 10 users, paying below 1 sat/vB, can consolidate their coins, and make a transaction, which would appear as at least 1 sat/vB on-chain. When we have 1 sat/vB, then miners are guaranteed to get at least 0.01 BTC in fees per block, as long as blocks are full, and users are willing to transact. By lowering that limit, it may cause problems, when next halvings will lower the basic
...
💬 romanz commented on pull request "index: store per-block transaction locations for efficient lookups":
(https://github.com/bitcoin/bitcoin/pull/32541#issuecomment-3092464779)
I have split the content of this PR into 2 commits:
- 784459ac79 is adding the new `/rest/txfromblock/` endpoint
- 1b928f58fc is adding an optional `locationsindex` for optimizing lookups
💬 Aditya-PS-05 commented on issue "Bitcoin Core v29.0 incorrectly enters IBD mode when only ~600 blocks behind, preventing normal sync":
(https://github.com/bitcoin/bitcoin/issues/32955#issuecomment-3092466357)
I think, the main problem is in the IBD detection logic in ChainstateManager::IsInitialBlockDownload()

https://github.com/bitcoin/bitcoin/blob/master/src/validation.cpp#L2035

here, the max_tip_age defaults to 24 hours. When a node is offline for "a few days" and restarts ~600 blocks behind, the tip is older than 24 hours, incorrectly triggering IBD mode.

I think this can be solved by modifying IBD detection to consider both tip age AND block distance.
💬 sipa commented on issue "Bitcoin Core v29.0 incorrectly enters IBD mode when only ~600 blocks behind, preventing normal sync":
(https://github.com/bitcoin/bitcoin/issues/32955#issuecomment-3092471548)
> here, the max_tip_age defaults to 24 hours. When a node is offline for \"a few days\" and restarts ~600 blocks behind, the tip is older than 24 hours, incorrectly triggering IBD mode.

It *should* be in IBD mode in this case.
💬 caesrcd commented on pull request "Reduce minrelaytxfee to 100 sats/kvB":
(https://github.com/bitcoin/bitcoin/pull/32959#issuecomment-3092509339)
The mempool is already constrained by `DEFAULT_MAX_MEMPOOL_SIZE_MB`, which prevents unbounded transaction accumulation and significantly reduces the feasibility of relay-based DoS attacks. Historically, the network has operated reliably even during extended periods of mempool congestion, where dynamic fee pressure naturally evicts lower-fee transactions.

This proposed configuration provides a practical balance between usability and relay robustness:
```cpp
static constexpr unsigned int DEFA
...