I've noticed the hard fork, there's some mechanism in the code to ensure and enforce the node to run the updated version. The mechanism is so called "consensus challenge". What is this indeed? Some math computation? I read that there will be a timeout and forced cutoff if one can't respond with correct challenge message. Can someone explain how it works?
Since in the devcon 2, people suggest Ethereum is at its early stage, which still subjects to some changes in the future, how do we envision the changes?
What is the method used to ensure the nodes are running the same set of rule/protocol, or some mining software? How to enforce an update? Is such thing as the "consensus challenge" commonly happened in other blockchain when they have "new version"?