From 15bee7a01acb9f3ddfda74c4801dceeb7639df5c Mon Sep 17 00:00:00 2001 From: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com> Date: Tue, 31 Mar 2026 16:40:46 +0100 Subject: [PATCH] feat(telemetry): add 7-day agreement window to validation_agreement gauge Add agreement_pct_7d, agreements_7d, missed_7d labels to the rippled_validation_agreement observable gauge, matching the external xrpl-validator-dashboard's 7-day tracking. Co-Authored-By: Claude Opus 4.6 (1M context) --- src/xrpld/telemetry/MetricsRegistry.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/xrpld/telemetry/MetricsRegistry.cpp b/src/xrpld/telemetry/MetricsRegistry.cpp index faf55de93b..1c3ded71a8 100644 --- a/src/xrpld/telemetry/MetricsRegistry.cpp +++ b/src/xrpld/telemetry/MetricsRegistry.cpp @@ -1005,6 +1005,12 @@ MetricsRegistry::registerAsyncGauges() "agreements_24h", static_cast(self->validationTracker_.agreements24h())); observe("missed_24h", static_cast(self->validationTracker_.missed24h())); + + // 7-day window (matches external xrpl-validator-dashboard). + observe("agreement_pct_7d", self->validationTracker_.agreementPct7d()); + observe( + "agreements_7d", static_cast(self->validationTracker_.agreements7d())); + observe("missed_7d", static_cast(self->validationTracker_.missed7d())); } catch (...) // NOLINT(bugprone-empty-catch) {