From d1a96daba373f9ece1a51d87eeafe2cc5190b8ba Mon Sep 17 00:00:00 2001 From: Yura Lazarev Date: Thu, 9 Jul 2026 12:45:10 +0200 Subject: [PATCH 1/2] report: add per-submission evaluation breakdown pages (#231) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Each submission now gets its own detail page at report/benchmarks//.html, linked from its row on the scenario page. The page lists every evaluation from that submission's metrics.json split into two visually distinct sections — Measurements (included in aggregates) and Checks (excluded) — each showing the evaluation name, description, result, and its stored CPU and memory units. The excluded count reconciles with the scenario page's footnote. The scenario page stays a light comparison view: it embeds no per-evaluation data and only links out to the detail pages, so its weight does not grow with the number of evaluations. The submission-row label, previously linking to the GitHub source, now opens the detail page; the GitHub source link moves onto the detail page, and the footnote points readers at the breakdown instead of the raw metrics.json. Detail pages are rendered server-side with gomplate, reading each submission's evaluations[] directly from metrics.json (the positional aggregate CSV can't carry a variable-length list). No re-measuring and no new metric fields. Also fix the single-benchmark report path, which aborted on bash 5.3 with "bad array subscript": the unfiltered aggregate cache used an empty associative-array key, which 5.3 rejects, so it is folded to a non-empty sentinel. Localize the benchmark loop variable in generate_index_report so it no longer clobbers the caller's benchmark name in the success messages. --- .../submission/benchmark.html.tmpl | 11 +- .../submission/report.help.tmpl | 4 + scripts/cape-subcommands/submission/report.sh | 131 +++++++++- .../submission/submission-detail.html.tmpl | 243 ++++++++++++++++++ 4 files changed, 379 insertions(+), 10 deletions(-) create mode 100644 scripts/cape-subcommands/submission/submission-detail.html.tmpl diff --git a/scripts/cape-subcommands/submission/benchmark.html.tmpl b/scripts/cape-subcommands/submission/benchmark.html.tmpl index a2b32c5d..1deee331 100644 --- a/scripts/cape-subcommands/submission/benchmark.html.tmpl +++ b/scripts/cape-subcommands/submission/benchmark.html.tmpl @@ -235,7 +235,6 @@