I watched Jay’s recent video regarding Proposals 12234 and 12236, and after going back through both proposals, the discussion surrounding them, and Jay’s arguments, I wanted to offer my own perspective.
Before anything else, let me make the usual disclaimer:
The following is MY perspective and MY opinion.
I’m not suggesting that anyone should agree with me, adopt my philosophy, or vote the way I would vote. I’m simply putting another perspective on the table for people to examine and assess for themselves.
And to be fair to Jay, I think he raises some legitimate concerns. Where we differ is mostly in what conclusions should be drawn from them.
Proposal 12234 changed CosmWasm code-upload permissions on Terra Classic from “Everybody” to “Nobody.” In simple terms, before that change, anyone could upload new CosmWasm code to the chain. After the change, new code uploads had to go through governance unless governance later decided to specifically authorize certain uploaders.
Existing contracts were not disabled.
Existing code could still execute.
CosmWasm itself wasn’t removed.
What changed was who could place NEW code onto the chain.
Jay’s basic philosophical objection is easy enough to understand. Something that had previously been permissionless became permissioned. That means a developer who previously could simply build and upload now potentially has to ask governance for permission.
Who gets approved? Who doesn’t? Could familiar projects eventually receive favoritism that a new or unknown developer can’t get? Could validators effectively become gatekeepers deciding which projects get an opportunity to build?
Those are legitimate questions and I won’t dismiss them.
In fact, if Terra Classic eventually reaches a point where a small circle of familiar projects can upload whatever they need while every new developer has to fight through governance because nobody recognizes their name, I might have a problem with that too.
But there’s something in Prop 12234 that I think got lost in this discussion. The possibility of authorizing specific uploaders later was already suggested in that prop.
It explicitly contemplated moving from “Nobody” to an allowlist of selected, vetted deployers through a future governance vote.
So Proposal 12236 isn’t some loophole that Juris Protocol exploited after the rules changed. It’s an application of a mechanism that 12234 specifically said could be used later if governance chose to do so.
And that brings me to something I find a little ironic about the decentralization argument.
Prop 12234 didn’t get imposed on Terra Classic by Bumeo, Juris Protocol, Frag, or some central authority.
It went through the Terra Classic governance process. It went to a vote and received roughly 90% Yes. It reached quorum and then it passed.
Now, Jay himself correctly points out that governance is a decentralized mechanism.
His distinction is that a decentralized governance process voted to convert one particular function from permissionless to permissioned.
Yep.
But this is where my philosophy differs somewhat.
Terra Classic is a Proof-of-Stake blockchain. Governance is part of the decentralized architecture. Sometimes decentralized governance is going to produce a result that I don’t like. I’ve been involved with Terra Classic governance long enough to have seen plenty of those. But I don’t think decentralization means every individual function must forever remain permissionless regardless of what governance decides.
If the community, through the governance mechanism built into the chain, decides to restrict something for security reasons, that decision is still the product of decentralized governance.
That does NOT mean the decision can never be reconsidered. It doesn’t mean people can’t scrutinize it.
Continued ->
Before anything else, let me make the usual disclaimer:
The following is MY perspective and MY opinion.
I’m not suggesting that anyone should agree with me, adopt my philosophy, or vote the way I would vote. I’m simply putting another perspective on the table for people to examine and assess for themselves.
And to be fair to Jay, I think he raises some legitimate concerns. Where we differ is mostly in what conclusions should be drawn from them.
Proposal 12234 changed CosmWasm code-upload permissions on Terra Classic from “Everybody” to “Nobody.” In simple terms, before that change, anyone could upload new CosmWasm code to the chain. After the change, new code uploads had to go through governance unless governance later decided to specifically authorize certain uploaders.
Existing contracts were not disabled.
Existing code could still execute.
CosmWasm itself wasn’t removed.
What changed was who could place NEW code onto the chain.
Jay’s basic philosophical objection is easy enough to understand. Something that had previously been permissionless became permissioned. That means a developer who previously could simply build and upload now potentially has to ask governance for permission.
Who gets approved? Who doesn’t? Could familiar projects eventually receive favoritism that a new or unknown developer can’t get? Could validators effectively become gatekeepers deciding which projects get an opportunity to build?
Those are legitimate questions and I won’t dismiss them.
In fact, if Terra Classic eventually reaches a point where a small circle of familiar projects can upload whatever they need while every new developer has to fight through governance because nobody recognizes their name, I might have a problem with that too.
But there’s something in Prop 12234 that I think got lost in this discussion. The possibility of authorizing specific uploaders later was already suggested in that prop.
It explicitly contemplated moving from “Nobody” to an allowlist of selected, vetted deployers through a future governance vote.
So Proposal 12236 isn’t some loophole that Juris Protocol exploited after the rules changed. It’s an application of a mechanism that 12234 specifically said could be used later if governance chose to do so.
And that brings me to something I find a little ironic about the decentralization argument.
Prop 12234 didn’t get imposed on Terra Classic by Bumeo, Juris Protocol, Frag, or some central authority.
It went through the Terra Classic governance process. It went to a vote and received roughly 90% Yes. It reached quorum and then it passed.
Now, Jay himself correctly points out that governance is a decentralized mechanism.
His distinction is that a decentralized governance process voted to convert one particular function from permissionless to permissioned.
Yep.
But this is where my philosophy differs somewhat.
Terra Classic is a Proof-of-Stake blockchain. Governance is part of the decentralized architecture. Sometimes decentralized governance is going to produce a result that I don’t like. I’ve been involved with Terra Classic governance long enough to have seen plenty of those. But I don’t think decentralization means every individual function must forever remain permissionless regardless of what governance decides.
If the community, through the governance mechanism built into the chain, decides to restrict something for security reasons, that decision is still the product of decentralized governance.
That does NOT mean the decision can never be reconsidered. It doesn’t mean people can’t scrutinize it.
Continued ->