SIGN IN SIGN UP

fix: keep Castiron budget results valid when main advances (#4012)

## Summary

PR base metadata can lag main, and main can advance while Castiron jobs
queue. Comparing each stage with a different base can reject a valid
evaluation or leave required budget statuses missing.

Pin PR reporting and budget policy to the trusted main checkout and the
source run's head, then publish that captured pair even if main
advances. Reports and statuses identify the evaluated base; publication
still verifies the open PR, target repository/branch, current head, and
source run. Evaluation errors publish failed statuses with a link to the
diagnostic run. Pending evaluations are retained, and older publications
cannot overwrite newer results.

Merge groups still independently verify current main, queue membership,
ancestry, and the combined candidate. Budget limits and required-queue
enforcement are unchanged.

Checked with the 59-test offline Castiron suite (one compiler-contract
test skipped), Ruff, Pyright, mypy, and workflow YAML parsing.
A
Alex Chang committed
73f189b2918197478cc93e31905a402c0a8389e3
Parent: 1dbbf61
Committed by GitHub <noreply@github.com> on 10/1/2026, 10:47:53 PM