Today is a wonderful day 🍀 for a breakfast at your favourite restaurant.
But chain upgrade ✨? Upgrade panic 💢? Devs forgot to add upgrade handler that caused the panic 🤯?
You want your breakfast, But!!! you also want to know Pre-Vote status on-chain? You NEED this tool! Streaming Pre-Vote to your mobile and enjoying your wonderful morning ☀️ out of the house!
Not done yet, core team patched the issue but other validators went offline 😱? You NEED this tool once again ❤️🔥! Keep streaming Pre-Vote to your mobile and enjoying your wonderful afternoon ⛅️ in the forest with your partner 🌳
This tool magically turns a boring day into a wonderful day for FREE 🤩
Now read me 👇
A simple utility for watching pre-vote status on Tendermint/CometBFT chains. It will print out the current pre-vote status for each validator in the validator set. Useful for watching pre-votes during an upgrade or other network event causing a slowdown.
A full rework of pvtop by @blockpane and plus some miracles
- Live-streaming mode (view sample), sharing pre-voting information to everyone:
cvp --streaming
- Display Block Hash fingerprint which the validator voted on
- Allow scrolling on terminal UI (thanks to @freak12techno)
# Require go 1.19+
# New install
git clone https://github.com/bcdevtools/consvp ~/consvp
cd ~/consvp && make install
# Or update to the latest version
cd ~/consvp && git pull ; make install
cvp
# => use http://localhost:26657
# For streaming mode
cvp http://localhost:26657 --streaming
# or resume streaming in case of mistakenly exit
cvp http://localhost:26657 --resume-streaming
cvp 19000
# => use http://localhost:19000
cvp https://rpc.cosmos.network
# => use https://rpc.cosmos.network
cvp https://rpc.example-consumer.network https://rpc.cosmos.network
# => use https://rpc.example-consumer.network as consumer network RPC endpoint
# and use https://rpc.cosmos.network as producer network RPC endpoint (typically Cosmos Hub)
cvp http://consumer:26657 http://producer:26657 --streaming
Notes:
- Default fetching consensus state is 3 seconds, can reduce to 1s by adding
-r
flag. - In case interrupted from streaming mode, should resume instead of start a new session. Resume by adding
--resume-streaming
flag and provide the latest session id and key printed in previous run. - Streaming session has default expiration time is 12 hours.
Pre-Vote | Pre-Commit | Block Hash | Order | Voting Power | Moniker |
---|---|---|---|---|---|
✅ | ❌ | C0FF | 1 | 11.03% | Val1 |
🤷 | ❌ | 0000 | 2 | 10.23% | Val2 |
❌ | ❌ | ---- | 3 | 08.07% | Val3 |
✅ | ✅ | C0FF | 4 | 01.15% | Val4 |
cvp --version