Voting on Consumer Chains with ATOM

Hi all!

Now that Neutron is airdropping a significant amount of NTRN tokens, we need to think of a solution for how the Hub can vote on consumer chains (CC). The Hub will own around 50% of Neutron’s voting power at the time of writing, although this will likely decrease over time as tokens unlock.

If a consumer chain faces a contentious vote that would impact ATOM holders, I believe it would be essential that we have the infrastructure in place to use the Hub’s voting power to cast a vote.

I don’t think it makes sense for ATOM holders to be required to vote on every CC’s proposal, but for critical votes such as “We want to change our inflation rate” or “We want to change the revenue share model”, the full force of the Hub’s voting power should be used. On a high level, here’s the voting process I propose:

  1. A consumer chain has a proposal up in the voting period
  2. The Cosmos Hub uses Interchain Queries to periodically update it’s list of currently active CC proposals
  3. Any ATOM holder can create a transaction to clone a CC’s prop on the Hub
  4. The CC’s prop’s metadata will automatically be copied in a new prop on the Hub and will have a voting period end-date one day prior to the end-date on the CC
  5. ATOM holders vote
  6. If quorum is reached, the Hub casts a weighted vote on the CC over IBC
    A. This means that if the outcome on the Hub is 70% yes and 30% no, the Hub uses its full voting power to vote 70% yes and 30% no on the consumer chain
    B. This assumes that the 40% quorum is a sufficient representation of ATOM holder’s intentions

I believe that this functionality should exist within the ATOM Alignment Treasury module inside the Hub’s Gaia binary.

Vote casting

The tricky part is how the vote is cast on consumer chains. The solution that requires no changes on the CC’s code would include using Interchain Accounts and moving funds over to that address (and staking them). However, this is not an ideal solution as we might want to use these funds to provide liquidity in a pool to bootstrap projects in the AEZ, like we did with Stride on prop 800.

Ideally, consumer chains would enable a feature that would allow a whitelisted Interchain Account to trigger a vote on the CC, and the CC would have some custom logic that allows it to know the Hub’s voting power, regardless of how it’s being deployed.

My preliminary thinking is that the AAT module on the Hub would track its voting power on the various places it’s being deployed, and send a vote using Interchain Accounts containing a memo with its voting power. There are a few details that need to be resolved as the Hub’s voting power might change over time (although the vote would come in just a day prior to the voting period ending). Perhaps there’s a custom message that can be sent on a periodic basis that updates the CC’s knowledge of the Hub’s VP.

I’m keen to get some feedback on this thinking as I’m hoping to move forward with putting a signal proposal up to get approval for phase one of the ATOM Alignment Treasury.

Tagging some stakeholders and big brains here: @jtremback @uditvira @Spaydh @Riley @Elijah @effortcapital @hxrts

Noam / Binary Builders


This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.