Say a build handed out again restarted, in its log, the queue and the check's verdict
mesh/delivery superseded: a newer head of the same pull request
mesh/merge-gate head 43cab564523d merged into trunk 56d6313262e8 — pass: builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus…
mesh/repo-check head 43cab564523d merged into trunk 56d6313262e8 — pass: its merge-check.sh passed

A build agent replaced mid-build leaves its ask to be handed out again, and
the second run looked like a first: the queue and the pull request showed
nothing of the 5-8 minutes lost (novox/hq issue 594).
This commit is contained in:
2026-10-13 00:26:08 +02:00
parent 21ac8fd858
commit 43cab56452
8 changed files with 214 additions and 5 deletions
+13
View File
@@ -429,6 +429,19 @@ func checkedOf(result link.BuildResult) link.Checked {
l.Verdict = "error"
}
}
// **A check run again says so on every layer** (novox/hq issue 594): the summaries are the lines the
// pull request shows, and a verdict from a second run — an earlier build agent replaced mid-check —
// must not read as the first. Copies, so the build's own outcome is left as it came.
if said := link.Restarted(result.Delivery); said != "" {
c.Summary = said + "; " + c.Summary
for _, l := range []**link.CheckLayer{&c.Gate, &c.RepoCheck} {
if *l != nil {
layer := **l
layer.Summary = said + "; " + layer.Summary
*l = &layer
}
}
}
if len(c.Report) > maxCheckReport {
c.Report = "…" + c.Report[len(c.Report)-maxCheckReport:]
}