mirror of
https://github.com/XRPLF/rippled.git
synced 2026-08-21 14:20:56 +00:00
Four findings from a review pass over the PR. The "Spans & traces" row was empty. Moving the row header down to clear the back-fill panels was only half the change -- the seven span-derived panels stayed at their old y, one unit below the native panels, so every pair overlapped and Grafana parented all fifteen to "Back-fill & persistence". The panels now sit below the row header, which restores the split the runbook already describes: eight native panels answer "how much", seven span-derived ones answer "which". Both rows stay expanded, so the docs no longer call them collapsed. metric_constants() excises each namespaced block before the flat prefix pass. The flat pass classifies by identifier prefix and is meant for headers that name the role in the identifier because they have no `namespace metric`/`label`/`lval`; it was running over the whole header, so a `kLabel`-prefixed constant written inside `namespace metric` landed in both buckets and an instrument name became a valid label key for Rule D. Nothing in the tree does that today, which is why it went unnoticed, and why the guard is a test rather than a fix for an observed failure. The `site` label now keeps a non-default port and drops userinfo residue from the host. Omitting the port unconditionally merged two local sites that differ only by port; printing it unconditionally would have renamed the existing `https://vl.ripple.com` series. Comparing against the scheme default distinguishes a configured port from the one the Resource constructor fills in. parseUrl's host group also permits '@', so a malformed URI with two of them leaves part of the userinfo in `domain`.