Concept
Overview
D-Chain has two governing parts:
- The
DT stakers
propose and vote system: allows the community ofDT holders
who have staked to make governance proposal and vote on proposals. Oversight Committee
: a group of committee members who have high stakes in the network, such as the legal entities behind the deployed DApps form this group. The detailed rationale and DApps participation in theOversight Committee
can be found in the features
OversightCommittee group
The main purpose of that group is to ensure that D-Chain remains compliant for its stakeholders. This is done by
allowing 2 actions to be done exclusively by this group. The group address is stored as authority in the dgov
module.
Such group has their own Oversight Committee Group Policy
and this policy has an address as well. in terms of Cosmos
SDK account it's a real account but unclaimable
one. the main difference is that it does not have private keys. But we
may use such address as an authority in d-gov
module, to check that message came exact from Oversight Committee
.
The main responsibility of the group is to make a regulatory decision. It has 2 main mechanism to make it:
- Send a
MsgOversightCommitteeVeto
message that declines the proposal that's being already passed. - Send a
MsgOversightCommitteeExec
message that allows to execute the attached message without voting. It's an emergency action to prevent the chain from going down. This group address is stored as authority in thedgov
module.
Cosmos SDK Group overview
We provide background on the cosmos-sdk's x/group module and how it supports Oversight Committee
and dgov
requirements.
The registered group has an Oversight Committee Group Policy
which is an unclaimable
account within the cosmos-sdk -
i.e. it has address, account number and balances. The main difference is that it does not have private keys.
Instead, the group members must propose and vote to execute messages.
The group
module from Cosmos SDK is responsible for making a collectivity decision through proposal
mechanism. To be
short:
- There is a
proposer
, who is sending aSubmitProposal
message with another message inside that will be executed in case of passing. - Other participants may vote on the proposal using
Vote
message. - Depending on the decision policy and the number of votes, the proposal is either accepted or rejected.
More details here. This Oversight Committee Group Policy
address
is used in dgov
module, to check that special messages can only be executed by the Oversight Committee
.