From 32ceca30323836e142f75fa9373691a5ed36e458 Mon Sep 17 00:00:00 2001 From: Florent Tapponnier Date: Thu, 9 Jul 2026 14:28:55 +0200 Subject: [PATCH] head-lag: raise aberrant cap 30s to 120s (dropped all codex robinhood samples at ~45s real lag) --- harnesses/aggregator-head-lag/cmd/script/metrics.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/harnesses/aggregator-head-lag/cmd/script/metrics.go b/harnesses/aggregator-head-lag/cmd/script/metrics.go index 0be24c63..55b14b40 100644 --- a/harnesses/aggregator-head-lag/cmd/script/metrics.go +++ b/harnesses/aggregator-head-lag/cmd/script/metrics.go @@ -383,8 +383,12 @@ func RecordMetadataLatency(provider string, chain string, latencyMs float64, reg // RecordHeadLag records the head lag for an aggregator on a specific chain func RecordHeadLag(aggregator string, chain string, lagBlocks int64, lagSeconds float64, region string, txHash string) { - // Filter out aberrant values (> 30s likely means connection issues, not real lag) - if lagSeconds < 0 || lagSeconds > 30 { + // Filter out aberrant values. 120s matches the fast-trade filter: it + // keeps out reconnect replay backlogs (minutes-old events redelivered + // after a resubscribe) while letting real high lag through. The old 30s + // cap silently dropped every codex sample on Robinhood Chain (~45s real + // lag), showing "no data" instead of the honest bad number. + if lagSeconds < 0 || lagSeconds > 120 { return }