Becoming a Steward

Becoming a steward

A public goods steward can consist of an arbitrary number of people, and can be a single person. The only requirement is that the steward's multisignature account is elected by the community, through a governance proposal.

For this reason, the first step to becoming a steward is to create a multisignature account. This can be done using the commands found in the multisgnature documentation.

Once the multisig account is created, the steward can submit a governance proposal to elect the account as a steward.

Governance proposal

The governance proposal required to elect a new steward is StewardProposal.

Crafting the proposal.json file for a StewardProposal

The steward_proposal.json file contains the information about the proposal. It is a JSON file with the following structure:

{
    "proposal" :{
        "id": 1,
        "content": {
            "title": "Stewie for Steward 2024",
            "authors": "[email protected]",
            "discussions-to": "forum.namada.net/t/stewies-manifesto/1",
            "created": "2024-01-01T00:00:01Z",
            "license": "MIT",
            "abstract": "Stewie is running for steward, with a focus on technical research. The technical research I will be focused on will definitely not be for weapons of mass destruction. There is some possibility however that I may be focusing somewhat on open source software for weapons of mass destruction.",
            "motivation": "Nobody knows technical research better than me. Trust me. I know it. I have the best technical research. I will be the best steward. Last night, Namada called me and said, Stewie, thank you. I will make public goods funding great again",
            "details": "As a genius baby, I possess an unmatched level of intelligence and a visionary mindset. I will utilize these qualities to solve the most complex problems, and direct public goods funding towards weapons of mass destruction ... i mean open source software for weapons of mass destruction"
        },
        "author": "stewie",
        "voting_start_epoch": 3,
        "voting_end_epoch": 6,
        "grace_epoch": 12
    },
    "data" : {
        "add" : "atestatest1v4ehgw36g4pyg3j9x3qnjd3cxgmyz3fk8qcrys3hxdp5xwfnx3zyxsj9xgunxsfjg5u5xvzyzrrqtn",
        "remove": []
    }    
}

The "data" field contains the structure that allows either the addition or removal of a multisignature account from the list of stewards. In this case, the "action" is "add", and the "address" is the address of the multisignature account that will be elected as a steward. If the "action" was "remove", the "address" would be the address of the multisignature account that would be removed from the list of stewards.

💡

In the motivation and abstract field, it is important to make clear what type of public goods funding the steward will be focusing on. The areas of public goods funding can be found in the public goods funding specs (opens in a new tab).

Submitting the proposal to the ledger

The CLI command to submit a proposal is:

namadac init-proposal \
        --pgf-stewards \
        --data-path <path/to/steward_proposal.json>

where <path/to/steward_proposal.json> is the path to the steward_proposal.json file.

Becoming elected

Once the proposal is submitted, it will be voted on by the community (see voting). If the proposal passes, the account will become a steward. If the proposal fails, the account will not become a steward.

Once a multisignature account becomes elected (which will happen at the end of the grace_epoch), it will be able to submit proposals to the public goods funding pool (see submitting proposals).

Losing stewardship

There are 4 ways that a steward can lose their stewardship:

  1. Resign as a steward
  2. Have a significantly failed funding proposal (/frac23/frac{2}{3} of the community votes, and out of these, /frac23/frac{2}{3} vote against the proposal)
  3. Become voted out through a governance proposal
  4. They reach the end of their term

Resigning as a steward can be done at any point. Through the CLI it can be done with the command:

namadac resign-steward --steward my-steward-address

Read more about the other methods of losing stewardship in the specs (opens in a new tab).

Update steward commissions

The commissions.json file contains the information about the reward distribution. It is a JSON file with the following structure:

{
    "reward_distribution": {
        "tnam...": "1"
    }
}

Update steward commissions can be done at any point. Through the CLI it can be done with the command:

namadac  update-steward-rewards --steward my-steward-address --data-path <path/to/commissions.json>