Skip to main content
Node upgrades follow a standard stop-replace-restart procedure. Autheo Chain uses Cosmos SDK governance-based upgrades where the network reaches consensus on an upgrade height, after which nodes must be running the new binary.

Before upgrading

  • Read the release notes at the GitHub releases page
  • Back up config/priv_validator_key.json and data/priv_validator_state.json
  • Confirm the target upgrade height or block time in the governance proposal

Upgrade procedure

1

Download the new binary

2

Stop the node at the upgrade height

The node will automatically halt at the governance-specified upgrade height if the upgrade handler is built into the binary. If performing a manual upgrade:
3

Replace the binary

4

Restart the node

Watch the logs for committed state messages indicating the node is producing or following blocks.
5

Verify sync

Confirm catching_up: false and that the latest_block_height is advancing.

Build from source (alternative)

Rollback

If the upgrade fails and you need to roll back:
  1. Stop the node: sudo systemctl stop autheod
  2. Restore the previous binary
  3. Restore data/priv_validator_state.json from your backup (critical — prevents double-signing)
  4. Start the node
Never restore an older priv_validator_state.json than the most recent backup. Using a stale state file will cause the node to double-sign blocks, resulting in permanent tombstoning.

Cosmovisor (automatic upgrades)

For automated upgrade management, consider running the node under Cosmovisor. Cosmovisor monitors for on-chain upgrade proposals and automatically swaps the binary at the target height.