Skip to content

Latest commit

 

History

History
53 lines (49 loc) · 2.92 KB

README.md

File metadata and controls

53 lines (49 loc) · 2.92 KB

CertiK Chain Shentu Mainnet genesis transaction submission guideline

CertiK Chain is finally launching soon. If you participated in the validator program (Raise the Stakes), you can now submit your genesis transaction using the genesis file provided.

  1. If you do not have certikd initialized (haven't run a node before), run the following command to initialize certikd data/config directory.

    certikd init --chain-id shentu-1 <your_moniker> 
  2. Copy the initial genesis file to the certikd config directory (by default ~/.certikd/config/).

    wget https://raw.githubusercontent.com/certikfoundation/mainnet/main/config/genesis.json ~/.certikd/config/genesis.json
  3. Create a genesis account through the following command:

    certikd add-genesis-account <address or key name> 2000000uctk --manual --unlocker certik1up7kaqxxvexgrpuxt6y2258qc3dkjdzvyp29v4 --vesting-amount=1000000uctk

    example:

    certikd add-genesis-account mykey 1000000uctk --manual --unlocker certik1up7kaqxxvexgrpuxt6y2258qc3dkjdzvyp29v4 --vesting-amount=1000000uctk
    
    1. make sure the address/key matches the one you submit with KYC.
  4. Make a genesis transaction using the same address, using the following command:

     certikd gentx --amount <self_delegation_amount> \
     --commission-rate <commission_rate> \
     --commission-max-rate <max_rate> \
     --commission-max-change-rate <max_change_rate> \
     --min-self-delegation <self_delegation_parameter> \
     --name <key_name>

    example:

     --amount 900000uctk
     --commission-rate 0.1
     --commission-max-rate 0.2
     --min-self-delegation 1

    The above command will give your validator 10% commission rate and 20% max rate, with 0.9CTK delegated from your account.

  5. To test your gentx is valid, run the following command:

    certikd collect-gentxs
    certikd start
    1. If your gentx is valid, it will start a single-node chain.
  6. Include your gentx file, located in ~/.certikd/config/gentx/gentx-<hash>.json to gentx/ directory here, and make a pull request to master branch to be included in the mainnet final genesis. Please do not change the file name.

    1. Tips on how to create a PR: https://opensource.com/article/19/7/create-pull-request-github

Some notes on gentxs:

  1. Make sure you place the genesis file in the correct directory while running certikd gentx. Otherwise it will result in an invalid gentx.
  2. When you submit your gentx through a PR, make sure you include it in the correct directory without changing the file name.
  3. If your gentx is invalid, you will have to wait until mainnet goes live to be certified as validator post-genesis.
  4. Most of the invalid gentxs from the validator testnet was due to wrong chain-id, or wrong parameters. Make sure you check your chain-id is shentu-1 in the genesis and you can start a single-node local chain with your gentx.