From dd8ac7d31364e4cfd2566312cf3fc04d7cf3dbfd Mon Sep 17 00:00:00 2001 From: sebas_correa Date: Tue, 11 Aug 2026 10:53:53 -0300 Subject: [PATCH] fix(ci): serialize release-please runs on consecutive main pushes Two pushes to main landing within the ~45s auto-merge window let two release-please runs overlap: one merges/creates the release PR while another, already mid-flight with stale state, tries to update the PR that just got merged and fails with "the pull request cannot be reopened". Observed live on 2026-08-07 (PR #169/#170) and previously on nullplatform/tofu-modules#485 with the same signature. Adds the same top-level concurrency group tofu-modules' release.yml already uses, so overlapping pushes queue instead of racing. Co-Authored-By: Claude Sonnet 5 --- .github/workflows/release.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f4b7255..7b037b9 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -5,6 +5,19 @@ on: branches: - main +# Serializes consecutive pushes to main so release-please never has two runs +# racing over the same release PR's state. Without this, two pushes landing +# within the ~45s auto-merge window can overlap: one run merges/creates a +# release PR while another, already mid-flight, tries to update the PR that +# just got merged and fails with "the pull request cannot be reopened" +# (observed live on 2026-08-07, PR #169/#170). cancel-in-progress: false +# queues the newer push instead of cancelling the in-flight one, since +# cancelling could interrupt a release-please run partway through mutating +# GitHub state (tags, releases, PR labels). +concurrency: + group: main-branch-push + cancel-in-progress: false + permissions: contents: write pull-requests: write