pub fn build_report(run: &RunDir) -> Result<Report, ReportError>Expand description
Assemble a report.v1 document from a loaded run directory.
Joins the gate’s verdicts to the measurements by candidate ID, picks the chosen configuration, and fills the two sections a reader acts on: candidates indistinguishable from the chosen one (overlapping intervals, reported rather than ranked) and refused candidates that measurably beat it.
Float ordering throughout uses f64::total_cmp, so a NaN median
produces a report rather than a panic — see tests/nan_ranking.rs.