Formatting a Proposal
Many proposals allow for long form text to be included, usually under the key description
. These provide the opportunity to include markdown if formatted correctly, as well as line breaks with .
Beware, however, that if you are using the CLI to create a proposal, and setting description
using a flag, the text will be escaped which may have undesired effects.
The examples shown below are of the text in a json
file packaged into a submit-proposal
transaction sent on-chain. More details about how to submit a proposal are in the next section, but for now just be aware that the examples are the contents of a file separate from the transaction. As a general rule, any flags specific to a proposal (e.g., Title, description, deposit, parameters, recipient) can be placed in a json
file, while flags general to a transaction of any kind (e.g., chain-id, node-id, gas, fees) can remain in the CLI.
Text
Text proposals are used by delegators to agree to a certain strategy, plan, commitment, future upgrade, or any other statement in the form of text. Aside from having a record of the proposal outcome on the Swisstronik, a text proposal has no direct effect on the change Swisstronik.
There are three components:
Title - the distinguishing name of the proposal, typically the way the that explorers list proposals
Description - the body of the proposal that further describes what is being proposed and details surrounding the proposal
Deposit - the amount that will be contributed to the deposit from the account submitting the proposal
Example
Community Pool Spend
There are five (5) components:
Title - the distinguishing name of the proposal, typically the way the that explorers list proposals
Description - the body of the proposal that further describes what is being proposed and details surrounding the proposal
Recipient - the Swisstronik (bech32-based) address that will receive funding from the Community Pool
Amount - the amount of funding that the recipient will receive (in aSWTR)
Deposit - the amount that will be contributed to the deposit (in aSWTR) from the account submitting the proposal
If the description says that a certain address will receive a certain number of aSWTR, it should also be programmed to do that, but it's possible that that's not the case (accidentally or otherwise). Check that the description aligns with the 'recipient' address.
Example
Param Change
Changes to the gov
module are different from the other kinds of parameter changes because gov
has subkeys. Only the key
part of the JSON file is different for gov
parameter-change proposals.
For parameter-change proposals, there are arguably seven (7) components, though three are nested beneath 'Changes':
Title - the distinguishing name of the proposal, typically the way the that explorers list proposals
Description - the body of the proposal that further describes what is being proposed and details surrounding the proposal
Changes - a component containing
Subspace - Cosmos SDK / Swisstronik module with the parameter that is being changed
Key - the parameter that will be changed
Value - the value of the parameter that will be changed by the governance mechanism
Deposit - the amount that will be contributed to the deposit (in aSWTR) from the account submitting the proposal
The components must be presented as shown in the example.
Example
Last updated