From cb0327de7fc0d11f2417ed748a045080ea7e3cf5 Mon Sep 17 00:00:00 2001 From: jochen Date: Thu, 8 Oct 2026 10:51:25 +0200 Subject: [PATCH] Judge a pull request by the base branch's merge-check.sh, not its own copy A change could delete or gut its merge-check.sh and skip its own tests, and a branch cut before the script escaped them. Where the base branch holds one, its script, declared parts and toolchain run against the change's tree, and the verdict says when the change lacks or alters the check (novox/hq issue 310). --- internal/builder/check.go | 27 +++- internal/builder/check_base.go | 134 ++++++++++++++++++ internal/builder/check_base_test.go | 210 ++++++++++++++++++++++++++++ internal/builder/replay310_test.go | 52 +++++++ 4 files changed, 420 insertions(+), 3 deletions(-) create mode 100644 internal/builder/check_base.go create mode 100644 internal/builder/check_base_test.go create mode 100644 internal/builder/replay310_test.go diff --git a/internal/builder/check.go b/internal/builder/check.go index 2223c099..00a31acc 100644 --- a/internal/builder/check.go +++ b/internal/builder/check.go @@ -43,7 +43,9 @@ import ( //