Skip to content

Commit 66f44bb

Browse files
authored
web(version_signaling): show V35->V36 crossing banner on ALL ratcheting coins (#496)
rest_version_signaling() gated on a hardcoded {LITECOIN,DOGECOIN} allowlist, returning an empty object for every other coin. But BTC/DGB/BCH are also v36-ratcheting (each wires core::version_gate / AutoRatchet: #440 BTC, #293 DGB, #255 BCH). On those nodes the dashboard crossing banner was suppressed entirely, so an operator could not see the V35->V36 cross — a charter #3 blind spot (operators must see the ratchet truthfully, cross-coin). Invert the guard to exclude only static-version coins (Dash = v16), which genuinely have no pending transition. Coins whose sharechain stats carry no vote data fall through to the existing empty-result path below, so the banner stays hidden until there is real crossing state — no false banners. Web-only, non-consensus. Co-authored-by: frstrtr <frstrtr@users.noreply.github.com>
1 parent e5af5f4 commit 66f44bb

1 file changed

Lines changed: 9 additions & 4 deletions

File tree

src/core/web_server.cpp

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5744,10 +5744,15 @@ nlohmann::json MiningInterface::rest_miner_payouts(const std::string& address)
57445744

57455745
nlohmann::json MiningInterface::rest_version_signaling(const nlohmann::json* cached_sc)
57465746
{
5747-
// V35→V36 transition tracking applies to the v36 coins (LTC and DOGE).
5748-
// Other blockchains (e.g. Dash v16) don't have a pending transition, so
5749-
// return an empty object to keep the dashboard's transition banners hidden.
5750-
if (m_blockchain != Blockchain::LITECOIN && m_blockchain != Blockchain::DOGECOIN)
5747+
// V35→V36 transition tracking applies to every v36-ratcheting coin
5748+
// (LTC/DOGE/BTC/DGB, plus BCH which reaches this path as its embedded base
5749+
// coin). Only static-version coins (Dash = v16) have no pending transition,
5750+
// so for those return an empty object to keep the crossing banner hidden.
5751+
// A prior hardcoded {LTC,DOGE} allowlist suppressed the crossing banner on
5752+
// BTC/DGB/BCH nodes mid-cross — a charter #3 blind spot. Coins whose
5753+
// sharechain stats carry no vote data simply fall through to an empty result
5754+
// below, so the banner stays hidden until there is real crossing state.
5755+
if (m_blockchain == Blockchain::DASH)
57515756
return nlohmann::json::object();
57525757

57535758
// Matches p2pool's get_version_signaling() — all fields the dashboard JS expects.

0 commit comments

Comments
 (0)