This is clearly not my point. What if 100% of the miners decided they don't want to share the block reward with the masternodes? Why enforcement has to be turned off, anyway? They could have made a new version that behaves just like the old version while the network is upgrading and keep enforcement on. We can't allow anyone to operate outside the established protocol, be it miners or masternodes, it undermines the network.91.76% of blocks are paid correctly (...)
Then for a whopping two weeks every 18 months, masternodes wouldn't get paid. Two weeks out of 18 months is 2.6%, so in that case, 97.4% of all blocks over that 18 month period would be paid correctly. Given that many miners are also masternode owners, you could expect them to move their hashpower to pools that were willing to voluntarily follow the rules (or to p2pool). Consequently, it's unlikely that we'd ever see 100% of all miners not paying masternodes while enforcement is off. Likewise, top pools don't won't to suffer the reputational damage that comes from being known in the Dash community as "cheaters."This is clearly not my point. What if 100% of the miners decided they don't want to share the block reward with the masternodes?
Because that's how it works. Just because we manage to do it smoothly, you should never forget that every upgrade is a HARD FORK. By definition, older clients aren't compatible with newer ones.Why enforcement has to be turned off, anyway? They could have made a new version that behaves just like the old version while the network is upgrading and keep enforcement on.
It does no such thing. Masternodes are paid correctly 99.77% of the time, which apparently works just fine since we're still humming along nicely, at an all time high price. Every upgrade (check forum history--every single one) a couple of people start complaining about cheating miners and "why is enforcement taking so long OMG!" It's really not that big of a deal.We can't allow anyone to operate outside the established protocol, be it miners or masternodes, it undermines the network.
If you have found a way to do that, you could always code it up and submit a pull request?Well, I disagree. A network that is meant to run anonymous and decentralized shouldn't rely on miners' reputation to keep things civil. And you can't count on miners owning masternodes either, a bunch of them convert everything to bitcoin automatically.
There is a way to upgrade smoothly while keeping enforcement on: you just have the new nodes use the old method to agree on which masternode to pay. And after a certain target percentage of upgraded nodes is achieved, then cut the rest of the network off and use the new method.
Maybe they are busy? Or maybe it isn't possible at all, for some reason that would only become clear if you started coding it?It's not a secret formula. Any core dev that wanted to do it this way, could.