The Bitcoin Core project is modularizing its infrastructure to improve efficiency while defending its codebase from becoming a sprawling monolith. Instead of integrating the new Stratum v2 mining protocol directly, developers introduced a generic IPC (Inter-Process Communication) interface. A sidecar application will handle the translation between Core’s internal language and the mining protocol.
This move, covered in depth by Bitcoin Optech, keeps complexity at arm's length. The node itself will speak Cap’n Proto over a Unix socket - a format significantly more efficient than wrapping multi-megabyte block templates in JSON-RPC.
"Core now speaks a generic IPC language that a 'sidecar' app translates into Stratum v2."
- Bitcoin Optech
To make this work for miners, a critical pull request added the ability for a node to fetch transactions by witness ID. This is essential for pool operators who need to reconstruct and verify custom block templates proposed by individual miners. Without this RPC method, a pool's node had no efficient way to retrieve the specific transactions needed for validation.
Node developers concurrently dismissed a separate proposal to make pruned nodes useful for Initial Block Download. The research suggested using fountain codes, where pruned nodes store tiny 'droplets' of block data to assist new nodes. Shores argued the scheme was premature and raised concerns from Murch about creating a permanent fingerprint for nodes and slower synchronization.
The network already has a robust foundation of over 21,000 full nodes serving the entire blockchain. With a validated header chain, a new node can download raw block data from any source - including a centralized provider like Amazon - and still cryptographically verify its integrity.
