Skip to content

116 measured samples behind every threshold

Made six reporting collectors state the part of their input they never read — files that stayed shut, probes not installed, journal lines unrecognised — and fitted thresholds to 116 measured samples, after establishing that a blind collection and a healthy host render the same page.

Situation. Six read‑only collectors rendered a live host into Markdown, and not one of them recorded its own runtime, the files it could not open, or the inputs it skipped. Several had failure paths that swallowed the failure outright, which produces a specific and dangerous shape of report: a page of numbers that looks complete and healthy whether or not anything was actually read. A rotated log that arrives truncated removes its whole span from every figure on the page, and a week of missing traffic reads exactly like a quiet week. A mirror whose daemon changed its log format produces the same zero as a mirror nobody visited. Every probe in the security report sits behind a test for the tool, so a host missing the firewall, socket and ban tools rendered no rules, no sockets and no jails – the visual signature of a locked‑down host, and in fact a blind one.

Task. Two things had to become impossible to mistake for health. A report had to state what counts as bad rather than leave a human to decide, and every collector had to state what its own collection cost and how much of its input it could not use.

Action. Thresholds were fitted to the 116 samples the metrics report had already measured, never to a guess, with the observed ranges recorded next to the bounds. The judging finds every column by name rather than by position and refuses to judge a row whose value count does not match its label count, which is what protects it from a clock‑format change that shifts every label by one. The report then distinguishes three outcomes rather than two: a breach, no breach, and not judged because nothing measured it. On the collection side each one now reports its runtime and its blindness – files read against files unreadable, journal lines read against journal lines recognised, repositories git refused to read counted rather than rendered as a zero, sources asked against sources that answered, probes asked against probes not installed – and every one of those rows is printed even when the answer is zero, because a row that disappears when it is empty is the same silence in a different form. Every template gained an explicit branch for output written by a collector older than itself.

Result. A page of this platform’s numbers now carries its own blind spots beside its findings. None of the self‑measurement is a gate, and that is stated rather than implied: no bound is fitted to a collector’s runtime, so a collection that doubles is visible and stops nobody, and fitting one would need a baseline from the real host that this work deliberately did not invent. The bounds that do exist are daily averages, so a host that touches a ceiling for a minute crosses nothing here – the fifteen‑minute switch catches that, neither replaces the other, and both reports say so on the page.