A dispute that dominated the field for years was ultimately resolved by a technical direction that neither side had been arguing for.
The original positions
One faction wanted larger blocks, accepting higher node requirements for more throughput.
The other wanted to preserve low node requirements and find capacity elsewhere.
Which was framed as throughput against decentralisation, and both sides accepted that framing.
The node cost argument
Larger blocks mean more bandwidth, storage and processing for every validating node.
Which reduces how many people can afford to verify independently.
Whether that mattered was the substantive disagreement, and it was a value judgement as much as a technical one.
How it played out
A signalling standoff, competing implementations, and eventually a chain split.
Which resolved through economic node operators choosing which rules to enforce.
The minority chain persisted with substantially lower activity.
The layered approach
Capacity added through systems settling to the base layer rather than on it.
Which was proposed during the debate and was not what either side was primarily arguing about.
Payment channels and rollup constructions are the resulting architectures.
What actually happened to fees
Base layer fees have remained volatile and periodically high during demand spikes.
Which is what a constrained block space market produces by design.
Layered systems absorb transactions that do not require base layer settlement.
The governance outcome
The dispute demonstrated that no group controls a protocol, including its developers.
Which was contested and is now generally accepted.
User-activated mechanisms established that node operators hold the decisive position.
The unresolved element
Long-term security funding as issuance declines and fees must carry more of the load.
Which was raised during the debate and remains open.
The retrospective view
Both sides made predictions that did not hold, and the technical direction that emerged came from a third position.
The signalling mechanism
Block producers indicated support for proposed changes through data in the blocks they produced.
Which was intended as a coordination tool and became a veto.
Producers withholding signalling stalled activation for an extended period.
The user-activated response
Node operators announcing they would enforce a rule regardless of producer signalling.
Which shifted the balance decisively.
It carried real chain split risk and worked because sufficient economic weight committed to it.
Compatibility of the change
The eventual upgrade was designed to be backwards-compatible.
Which allowed adoption without requiring every node to upgrade simultaneously.
This design choice was itself a substantial part of why it succeeded.
Adoption timeline
Uptake of the new transaction format took years rather than months.
Which is normal for changes requiring wallet and exchange integration.
Adoption statistics are published continuously and are trackable.
What the argument cost
Years of development attention, a permanent community split and substantial acrimony that persists.
Alternative implementations
Competing node software with different rules circulated during the dispute.
Which forced operators to choose actively rather than by default.
Adoption statistics for each implementation were tracked publicly throughout.
Business and community alignment
Exchanges, wallet providers and payment processors issued statements of intent.
Which carried weight because they represented user access.
Coordinated statements from economic participants proved more decisive than developer opinion.
Long-term capacity
Layered systems have absorbed activity that would otherwise compete for base layer space.
Which was the technical direction the resolution enabled.
Adoption of these systems has grown steadily rather than dramatically.
The lasting divide
Communities formed around the dispute persist with different technical priorities.
Which makes the historical argument still visible in current discussion.
Why it took so long
The dispute was not primarily technical. Both sides understood the trade-off; they disagreed about which property mattered more, and no amount of engineering resolves a values disagreement.
Protocols with no owner have no mechanism for settling such questions except through exit, which is what eventually happened.
The record worth reading
Mailing lists, improvement proposals and forum archives from the period are preserved and readable, and the arguments are more sophisticated than their later characterisation.
What to read
The improvement proposals, the mailing list archives and the contemporaneous implementation statistics are all preserved.
Which allows the dispute to be examined as it happened rather than as it is now described.
Both sides were more technically substantive than the caricatures that followed.
The lasting answer
Nobody controls the protocol — not developers, not miners, not businesses — and the rules are whatever economically significant node operators choose to enforce.
That was demonstrated rather than argued, which is why the question has not needed reopening.
What the dispute cost and produced
Years of attention, a permanent split and lasting acrimony, alongside a demonstrated answer to who controls a protocol.
The layered scaling direction that emerged was proposed during the argument and adopted after it, which is a common pattern in technical disputes.
A closing note
The argument settled a governance question that no whitepaper had answered: when a protocol's participants disagree fundamentally, the rules are whatever economically significant node operators run.
Everything else about the dispute — the block sizes, the signalling, the acrimony — mattered less than that.