Live dashboard of Dash Platform evonode protocol-version upgrade progress: how many evonodes have upgraded their software, what protocol version each has signaled on-chain, and an estimate of when each node will next propose a block (and therefore flip its vote).
Live site: https://dashpay.github.io/platform-upgrade-vote-status/
- Software versions per evonode (
driveVersion/dapiVersion) from thequorums.<network>.networks.dash.org/masternodesendpoint. - On-chain protocol-version votes per masternode, proof-verified via
@dashevo/evo-sdk(getProtocolVersionUpgradeVoteStatus). A node's vote updates only when it proposes a block, and votes are tallied at the epoch boundary (67% of active evonodes required). - Next-proposal estimates:
getCurrentQuorumsInfoexposes the ordered quorum list, the active validator set, its member lists, and the last block proposer. Tenderdash walks proposers within the active quorum in ascending proTxHash order and rotates to the next quorum when the last member has proposed (seevalidator_set_update_v2inrs-drive-abci). The dashboard simulates that walk and multiplies by the epoch-average block time. Estimates drift with quorum churn at DKG boundaries and missed rounds — they are estimates, not commitments.
Everything runs client-side in the browser against public DAPI endpoints; there is no backend.
npm install
npm run dev # local dev server
npm run build # type-check + production build to dist/Deployed to GitHub Pages by .github/workflows/deploy.yml on push to main.
- The proved queries go through the WASM SDK (inlined in the bundle — hence the
large JS asset). The one unproved query (
getCurrentQuorumsInfo) uses a minimal hand-rolled gRPC-Web call directly to evonode IPs. - "Active evonodes" (the 67% denominator) counts
ENABLEDnodes from the masternode endpoint.