Closed mpoke closed 2 years ago
@hxrts and I created a voting matrix with a first pass about which chain should be in charge of which votes. The bulk of this sheet is param changes which could be debated.
https://docs.google.com/spreadsheets/d/1s7IGkxIjvebFu0guC5iFC4gWaEOJLBWx2QQHik9WmYo/edit?usp=sharing
The primary proposal type that imo should be performed by ATOM token holders is the upgrade proposal. Our messaging is that ATOM validators don't need to worry about gov on these consumer chains because they have their own gov tokens. This is true except for factors that impact the validator directly. Upgrades need to be prepared and performed by validators so I think it's important they happen on the hub where validators are still meant to be active.
This would be possible by leveraging the adminmodule inside of the composer repo: https://github.com/cosmos/composer/tree/master/x/adminmodule If the Cosmos Hub gov module account were listed in the whitelist then the cosmos hub gov module could send out proposal + vote msgs using interchain accounts. That way it is voted on the hub and if it passes it is submitted to the consumer chain and immediately passed.
The ultimate objective of this issue is to create a chain in the /app/gov-consumer
folder which implements the "democracy suite". The "democracy suite" is collection of modifications to certain modules and app.go
which allows several things to take place on a consumer chain:
There is already a lot of work that has been done:
Here are all the things that should be possible once this work has been completed and integrated:
Implement automated tests in the integration tests folder for these things.
@smarshall-spitzbart We need to talk about you helping @dusan-ethernal @stana-ethernal to test this stuff in the integration tests.
@stana-ethernal @dusan-ethernal Can this issue be closed now?
@jtremback it can be closed after we finish integration tests and clean up some logs in PR. We will let you know once we finish it
This issue refers to the so called democracy package (see https://github.com/cosmos/interchain-security/issues/66 for details).
app/gov-consumer/app.go
, should contain the modules necessary for the minimum viable consumer chain (seeapp/consumer/app.go
) and in addition the modules necessary for the gov-enabled consumer chain:x/ccv/staking
module is enabled (see https://github.com/cosmos/interchain-security/pull/89)x/ccv/staking
x/ccv/staking
x/ccv/distribution
module is enabled (see https://github.com/cosmos/interchain-security/pull/130) and connected tox/ccv/staking