added voting and proposals

This commit is contained in:
Sam Hadi 2021-11-16 14:48:47 -08:00
parent af0c2251fe
commit fe5e6d191b
3 changed files with 222 additions and 0 deletions

View File

@ -0,0 +1,50 @@
<!--
title: vote
-->
## kvcli tx committee vote
Vote for an active proposal
### Synopsis
Submit a ```[yes/no/abstain]``` vote for the proposal with id ```[proposal-id]```.
```
kvcli tx committee vote [proposal-id] [vote] [flags]
```
### Examples
```
kvcli tx committee vote 2 yes
```
### Options
```
-a, --account-number uint The account number of the signing account (offline mode only)
-b, --broadcast-mode string Transaction broadcasting mode (sync|async|block) (default "sync")
--dry-run ignore the --gas flag and perform a simulation of a transaction, but don't broadcast it
--fees string Fees to pay along with transaction; eg: 10uatom
--from string Name or address of private key with which to sign
--gas string gas limit to set per-transaction; set to "auto" to calculate required gas automatically (default 200000) (default "200000")
--gas-adjustment float adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored (default 1)
--gas-prices string Gas prices to determine the transaction fee (e.g. 10uatom)
--generate-only Build an unsigned transaction and write it to STDOUT (when enabled, the local Keybase is not accessible and the node operates offline)
-h, --help help for vote
--indent Add indent to JSON response
--keyring-backend string Select keyring's backend (os|file|test) (default "os")
--ledger Use a connected Ledger device
--memo string Memo to send along with transaction
--node string <host>:<port> to tendermint rpc interface for this chain (default "tcp://localhost:26657")
-s, --sequence uint The sequence number of the signing account (offline mode only)
--trust-node Trust connected full node (don't verify proofs for responses) (default true)
-y, --yes Skip tx broadcasting prompt confirmation
```
### Options inherited from parent commands
```
--chain-id string Chain ID of tendermint node
```

View File

@ -0,0 +1,95 @@
<!--
title: committee
-->
## kvcli tx gov submit-proposal committee
Submit a governance proposal to change a committee.
### Synopsis
Submit a governance proposal to create, alter, or delete a committee.
The proposal file must be the json encoded form of the proposal type you want to submit.
For example, to create or update a committee:
```
{
"type": "kava/CommitteeChangeProposal",
"value": {
"title": "A Title",
"description": "A description of this proposal.",
"new_committee": {
"type": "kava/MemberCommittee",
"value": {
"base_committee": {
"id": "1",
"description": "The description of this committee.",
"members": [
"kava182k5kyx9sy4ap624gm9gukr3jfj7fdx8jzrdgq"
],
"permissions": [
{
"type": "kava/SimpleParamChangePermission",
"value": {
"allowed_params": [
{
"subspace": "cdp",
"key": "CircuitBreaker"
}
]
}
}
],
"vote_threshold": "0.800000000000000000",
"proposal_duration": "604800000000000",
"tally_option": "FirstPastThePost"
}
}
}
}
}
```
and to delete a committee:
```
{
"type": "kava/CommitteeDeleteProposal",
"value": {
"title": "A Title",
"description": "A description of this proposal.",
"committee_id": "1"
}
}
```
```
kvcli tx gov submit-proposal committee [proposal-file] [deposit] [flags]
```
### Options
```
-a, --account-number uint The account number of the signing account (offline mode only)
-b, --broadcast-mode string Transaction broadcasting mode (sync|async|block) (default "sync")
--dry-run ignore the --gas flag and perform a simulation of a transaction, but don't broadcast it
--fees string Fees to pay along with transaction; eg: 10uatom
--from string Name or address of private key with which to sign
--gas string gas limit to set per-transaction; set to "auto" to calculate required gas automatically (default 200000) (default "200000")
--gas-adjustment float adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored (default 1)
--gas-prices string Gas prices to determine the transaction fee (e.g. 10uatom)
--generate-only Build an unsigned transaction and write it to STDOUT (when enabled, the local Keybase is not accessible and the node operates offline)
-h, --help help for committee
--indent Add indent to JSON response
--keyring-backend string Select keyring's backend (os|file|test) (default "os")
--ledger Use a connected Ledger device
--memo string Memo to send along with transaction
--node string <host>:<port> to tendermint rpc interface for this chain (default "tcp://localhost:26657")
-s, --sequence uint The sequence number of the signing account (offline mode only)
--trust-node Trust connected full node (don't verify proofs for responses) (default true)
-y, --yes Skip tx broadcasting prompt confirmation
```
### Options inherited from parent commands
```
--chain-id string Chain ID of tendermint node
```

View File

@ -0,0 +1,77 @@
<!--
title: param-change
-->
## kvcli tx gov submit-proposal param-change
Submit a parameter change proposal
### Synopsis
Submit a parameter proposal along with an initial deposit.
The proposal details must be supplied via a JSON file. For values that contains
objects, only non-empty fields will be updated.
IMPORTANT: Currently parameter changes are evaluated but not validated, so it is
very important that any "value" change is valid (ie. correct type and within bounds)
for its respective parameter, eg. "MaxValidators" should be an integer and not a decimal.
Proper vetting of a parameter change proposal should prevent this from happening
(no deposits should occur during the governance process), but it should be noted
regardless.
Example:
$ kvcli tx gov submit-proposal param-change <path/to/proposal.json> --from=<key_or_address>
Where proposal.json contains:
```
{
"title": "Staking Param Change",
"description": "Update max validators",
"changes": [
{
"subspace": "staking",
"key": "MaxValidators",
"value": 105
}
],
"deposit": [
{
"denom": "stake",
"amount": "10000"
}
]
}
```
```
kvcli tx gov submit-proposal param-change [proposal-file] [flags]
```
### Options
```
-a, --account-number uint The account number of the signing account (offline mode only)
-b, --broadcast-mode string Transaction broadcasting mode (sync|async|block) (default "sync")
--dry-run ignore the --gas flag and perform a simulation of a transaction, but don't broadcast it
--fees string Fees to pay along with transaction; eg: 10uatom
--from string Name or address of private key with which to sign
--gas string gas limit to set per-transaction; set to "auto" to calculate required gas automatically (default 200000) (default "200000")
--gas-adjustment float adjustment factor to be multiplied against the estimate returned by the tx simulation; if the gas limit is set manually this flag is ignored (default 1)
--gas-prices string Gas prices to determine the transaction fee (e.g. 10uatom)
--generate-only Build an unsigned transaction and write it to STDOUT (when enabled, the local Keybase is not accessible and the node operates offline)
-h, --help help for param-change
--indent Add indent to JSON response
--keyring-backend string Select keyring's backend (os|file|test) (default "os")
--ledger Use a connected Ledger device
--memo string Memo to send along with transaction
--node string <host>:<port> to tendermint rpc interface for this chain (default "tcp://localhost:26657")
-s, --sequence uint The sequence number of the signing account (offline mode only)
--trust-node Trust connected full node (don't verify proofs for responses) (default true)
-y, --yes Skip tx broadcasting prompt confirmation
```
### Options inherited from parent commands
```
--chain-id string Chain ID of tendermint node
```