From 83662b87e44bba1819561fe58f03e4a19af3bc41 Mon Sep 17 00:00:00 2001 From: omer-vishlitzky Date: Mon, 10 Aug 2026 00:45:13 +0300 Subject: [PATCH] OSAC-3734: remove classic branch protection required_status_checks MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This block was added in c17e367 to make Tide respect E2E checks (Tide only reads classic branch protection, not rulesets). With Tide being replaced by merge queue, it's no longer needed. The hardcoded strict=true conflicts with merge queue — GitHub docs explicitly warn: "You should not combine the merge queue with the 'Require branches to be up to date before merging' option in branch protection rules, as this can lead to unexpected behavior." This caused PRs to be repeatedly ejected from the merge queue even after all checks passed. Required status checks are still enforced via the repository ruleset (with strict=false, since the queue handles freshness). Assisted-by: Claude Code Signed-off-by: omer-vishlitzky --- modules/common_repository/main.tf | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/modules/common_repository/main.tf b/modules/common_repository/main.tf index e2aa96d..54b5771 100644 --- a/modules/common_repository/main.tf +++ b/modules/common_repository/main.tf @@ -101,20 +101,6 @@ resource "github_branch_protection" "repo_protection" { } } - # Prow's tide derives its merge-gating required contexts only from this - # (classic) branch-protection API, not from rulesets (pkg/config/tide.go: - # FromBranchProtection reads bp.RequiredStatusChecks). This field was - # never set here, so tide merged on labels alone, blind to e2e status. - # Mirror the same contexts already enforced by the ruleset below, from - # the same var.required_status_checks, so there's one list to maintain. - dynamic "required_status_checks" { - for_each = length(var.required_status_checks) > 0 ? [1] : [] - - content { - strict = true - contexts = [for check in var.required_status_checks : check.context] - } - } depends_on = [github_repository.repo, github_repository_collaborators.repo_collaborators] }