Manual Upgrades

Manual Upgrade Procedure for BitNet Nodes

This section provides instructions for BitNet validators and node operators who prefer to perform manual upgrades instead of using automation tools like Cosmovisor. Manual upgrades are also necessary when handling emergency forks, state resets, or custom genesis updates.


1. Stop the Node

Before beginning any upgrade, gracefully shut down your node:

Ctrl + C

2. Install the New BitNet Version

Switch to the correct GitHub release and compile the updated binary:

cd bitnet
git fetch --all && git checkout <new_version>
make install

Confirm the new binary is installed:

bitnetd version --long

3. Replace the Genesis File (If Required)

If the upgrade requires a genesis change, download the latest genesis.json from the appropriate BitNet repository and verify it:

cd $HOME/.bitnetd/config
cp -f genesis.json new_genesis.json
mv new_genesis.json genesis.json

echo "<expected_sha256_hash>  genesis.json" | sha256sum -c

4. Reset Node Data (If Required)

If the upgrade is a breaking change that requires a full data reset:

rm $HOME/.bitnetd/config/addrbook.json
bitnetd tendermint unsafe-reset-all --home $HOME/.bitnetd

5. Restart the Node

Once the upgrade and optional reset are complete:

bitnetd start

Your node will resync from the latest height or from scratch (if reset), and join the network using the new software version.


This completes the manual upgrade process. BitNet node operators should monitor network announcements, upgrade proposals, and release timelines to avoid downtime or consensus errors.

Last updated