check / check (push) Successful in 2m50s
A target's min, max, median and average latency now come from one list of its answers, through latencyStats(), which the summary's figures use too, so the median is written once. latencyHex() and latencyClass() read one table of color limits in CONFIG. The health thresholds, the debug log's length, the gateway check's timeout, the recovery probe's number of hosts and interval, how often the rows are sorted and the delay before the first sparkline resize are CONFIG entries, read where the numbers were. HostState's minLatency(), maxLatency(), averageLatency() and medianLatency() are gone; the statistics test reads historyStats(). Nothing the page does or shows changes. A unit test now covers the summary's figures. Model: opus-5-5