Interesting thought experiment:
The whole Bitcoin network agrees that there should never be more than 21 million Bitcoin.
Then there is a bug in the code, so that there are 22 million Bitcoin now.
What would happen? Would we just live with 22 million coins or agree to a hard fork that fixes the issue and makes the extra 1 million coins unspendable/deletes them?