"Upgraded nodes enforce the fork by rejecting blocks that are too large (which legacy nodes continue to accept)."

How is that not a hard fork?

Reply to this note

Please Login to reply.

Discussion

The definition of a soft fork is a further constraint. A narrowing of the consensus rules. The definition of a hard fork is relaxing a constraint. A broadening of the rules.

So expanding the main block size limit (Satoshi’s 1MB limit) is a hard fork because it relaxes the limit. Unupgraded nodes would NOT accept the new, larger blocks. It’s a hard fork because everyone must upgrade, or be left behind.

By contrast, reducing the block size is a soft fork. Unupgraded nodes will accept the new, smaller blocks just fine. It’s backwards compatible. People can opt to run old software and continue to use Bitcoin.

You're right, I was using hard fork & chainsplit interchangeably.

Thanks for the lesson 👍

No worries. You’re right that you can get a chain split in both cases. Soft forks are not without risk.