Yes, you can't tell people what code to write/not write.
It's more about having the Bitcoin community try to define what code they want to run and then funding new implementations that are willing to follow at least some of the rules.
There can also be bounties for devs who read the opensource repo and find bugs/find places where the agreed upon rules are not being followed.
For example, Bitcoin Core removed the definition of Bitcoin from their GitHub repository, so they're changing something they can't define or won't define because their definition might get backlash.
You need to at least define what Bitcoin is, what is changeable, what is not changeable to be considered a serious implementation.