This weekend the Bitcoin Blockchain experienced a forking incident due a discrepancy between what the expectations of a group developing a Bitcoin network client named "Bitcoin Core" and the actual behavior of Bitcoin miners. The developers of the Bitcoin Core client through a process they refer to as "Bitcoin Improvement Proposals" or BIPs introduced a "soft" forking change into their client which would be triggered through a voting mechanism. In this case miners had appeared to vote in favor of BIP 66, which would have enforced stricter encoding of signatures in an attempt to address the transaction malleability issue which is most notable for having been used as a scapegoat by Mt Gox while actually having little to do with their collapse.

Very soon after the voting mechanism triggered the "soft" fork a block that did not conform to the conditions of the "soft" fork was mined and a majority of the mining hashpower which had appeared to vote for the soft fork instead of orphaning the non-compliant block ended up mining what became the longest blockchain on top of it.

What followed in the social media echo chamber as well as the halls of the developers of this particular Bitcoin client implementation was an incredible amount of gnashing of the teeth and wailing that insisted the majority of the hashpower was somehow wrong though the hard mathematical reality of the situation was different. The voting mechanism had failed and users of the latest versions of Bitcoin Core along with the minority miners were stuck on the weak side of a Blockchain fork. This incident revealed a number of facts about the Bitcoin network are often under appreciated and infrequently discussed.

Of substantial primacy is the fact that there is far greater client heterogeneity on the Bitcoin network than the developers of the Bitcoin Core client would have people believe, and Bitcoin network client variety is the greatest among miners and other infrastructure operators. Running the latest version of "Bitcoin Core" is aberrant behavior among miners who largely use bespoke software, including software that does not fully validate blocks as typical full Bitcoin nodes do. Mining is competitive and pool operators compete for any degree of optimization they can because even 1 megabyte blocks are large enough to introduce substantial delays if they are fully verified before mining on top of them. This results in miners being described as zombies who adopt anything in the short term to cope with their low margins.

Further it is impossible to depend on any sort of voting system to implement forking changes to miner behavior in a smooth manner. There is no way to actually confirm that the real behavior of actual clients on the Bitcoin network conforms to expectations which may follow from the version strings the client broadcasts. The form of "soft consensus" which the developers of Bitcoin Core depend on to implement their "soft" forks is insufficient to prevent future network forks of the sort this voting mechanism apparently was intended to prevent.

This incident highlights the importance of the Bitcoin Foundation's work to maintain a stable reference implementation Bitcoin network client capable of operating as a full node. With the influence of Gavin Andresen and his fellow developers of the Bitcoin Core client waning to new lows as their attempts to force misguided efforts at "Bitcoin Improvement" fail through broken methods, assumptions, and implementations it is time for any last pretense of Bitcoin Core's development having any actual relationship to the actual living core of the Bitcoin Network to be discarded.