3 ms·
I'm not sure. His statement that all clients must be bug-for-bug compatible with Bitcoin Core is simply false. There is a big chunk of behavior that can differ
by pash 11y ago
I'm not sure. His statement that all clients must be bug-for-bug compatible with Bitcoin Core is simply false. There is a big chunk of behavior that can differ from client to client without the network fragmenting and without bad consequence to the clients whose behavior diverges from the majority's.
For example, clients have complete choice about which nodes to talk to and which received transactions to propagate. In fact, clients have complete choice about all functionality that depends on data that is not (or not yet) incorporated into the blockchain.
That's why we have the notion of consensus-relevance. There is a lot of stuff in Bitcoin Core that simply is not consensus-relevant, and Bitcoin Core's developers intend to continue to segregate the consensus-relevant stuff from the stuff that any client is free to make its own choice about. Yes, in the future it might be true that there's a big kernel of code that every client needs to use, but that kernel will not be all of Bitcoin Core as we know it today.