Skip to content

Latest commit

 

History

History
85 lines (66 loc) · 4.36 KB

File metadata and controls

85 lines (66 loc) · 4.36 KB

Hero Chain Information

Contents

Status

  • Timeline
    • 2022-11-17: Proposal goes into voting period
    • 2022-11-16: Chain initialized

Hero will launch as a consumer chain through a governance proposal in the provider chain. Read the Consumer Chain Start Process page for more details about the workflow.

The following items will be included in the proposal:

  • Genesis file hash
    • The SHA256 is used to verify against the genesis file that the proposer has made available for review.
    • This "fresh" genesis file cannot be used to run the chain: it must be updated with the CCV states after the spawn time is reached.
  • Binary hash
  • Spawn time
    • Even if the proposal passes, the CCV states will not be available from the provider chain until after the spawn time is reached.

Chain Data

Binary

The binary published in this repo is the herod binary built using the strangelove-ventures/hero repo tag v0.0.1. You can generate the binary following the Get Started section.

  • Linux amd64 build
  • Version: HEAD-88538019183c85a6a3f3536d0a88fa13b317dc6d
  • SHA256: 6e2faaa896d8f760d9cb74cab651e3f8988be46b0626e676fc62e904c5d63a71

Genesis file

The genesis file for Interchain Security consumer chains must include the CCV (Cross Chain Validation) state generated by the provider chain after the spawn time is reached.

Final genesis file with CCV state: hero-genesis.json

  • SHA256: f787eda7da85a451a606ec4bff6d752ca1aa3f6ee13d3175c3d1ec3da604bb70
  • Validators must replace their config/genesis.json file with this one before running the binary.

The genesis file with was generated using the following settings:

  • Chain ID: hero-1
  • Denom: uhero
  • Signed blocks window: "8640"
  • Genesis accounts were added to provide funds for a faucet and a relayer that will be run by the testnet coordinators.
  • Genesis file without CCV state: hero-fresh-genesis.json, SHA256: d59c950fc85f53e4407cb27b53cbc89bf168503ae74a603c33dca02c5e73eb93
    • This is provided only for verification, this is not the genesis file validators should be running their nodes with.

Endpoints

  • p2p seeds : fe7997dd631c2916189dc06f5ee59f27318b708b@tenderseed.ccvalidators.com:29039
  • p2p persistent peers : 4b5cee15e6a9c4b96b8c1c4f396a18b0461edc17@128.199.29.137:26656,835173badfc41ecbd867a0395c6a452bda2bb90f@128.199.26.103:26656
  • These peers represent the goc-coordinator and goc-backup validators (run by the testnet coordinators).
  • The goc-backup validator node will be running on Hero shortly after the genesis file that includes the CCV state (Cross Chain Validation state) has been published.
  • The goc-coordinator validator node has an overwhelming majority of the voting power, and we aim to start it two hours after the spawn time is reached. 67% of the voting power needs to come online for consumer chains to start. Once the goc-coordinator is live, the chain will progress.
  • Please keep in mind that any validator that does not come online after 67% of the voting power is up and running, is likely to be slashed for downtime, potentially resulting in being jailed (the signed_blocks_window parameter is set to 8640).

Join via Bash Script

On the node machine:

  • Copy the node_key.json and priv_validator_key.json files for your validator.
    • These should be the same ones as the ones from your provider node.
  • Run one of the following scripts:
  • Wait until the spawn time is reached and the genesis file with the CCV states is available.
  • Overwrite the genesis file with the one that includes the CCV states.
    • The default location is $HOME/.hero/config/genesis.json.
  • Enable and start the service:
    • Hero
      sudo systemctl enable hero
      sudo systemctl start hero
      
    • Cosmovisor
      sudo systemctl enable cv-hero
      sudo systemctl start cv-hero
      
  • To follow the log, use:
    • Hero: journalctl -fu hero
    • Cosmovisor: journalctl -fu cv-hero
  • If the log does not show up right away, run systemctl restart systemd-journald.