From f8e78e2ab5d129ff1eab57af925bb498c44af97e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 4 May 2026 07:25:34 +0000 Subject: [PATCH 1/2] Initial plan From 268c1e5e3bf55adf88507a03d196f804488a761b Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 4 May 2026 07:27:09 +0000 Subject: [PATCH 2/2] fix: use shared gh-pages concurrency group to prevent race conditions Both preview.yml and deploy.yml write to the gh-pages branch. Using a per-ref concurrency group (preview-${{ github.ref }}) only serialises within the same PR, still allowing concurrent writes from different PRs or different event types, causing rebase conflicts. Use a single shared `gh-pages` group with cancel-in-progress: false so all writers serialise while queued runs (like the closed event cleanup) are preserved. References: Primajin/satellite-tracker#357 Agent-Logs-Url: https://github.com/Primajin/Gyros/sessions/91e33b0a-a6ef-4d47-895b-7941c581610e Co-authored-by: Primajin <1742115+Primajin@users.noreply.github.com> --- .github/workflows/deploy.yml | 8 ++++++++ .github/workflows/preview.yml | 10 +++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 1cf6952..eba58c0 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -7,6 +7,14 @@ on: permissions: contents: write +# Use a single shared concurrency group so all runs that write to gh-pages are +# serialised. A per-ref group still allows concurrent writes from different +# triggers and causes rebase conflicts on the gh-pages branch. +# cancel-in-progress: false ensures queued runs still execute. +concurrency: + group: gh-pages + cancel-in-progress: false + jobs: deploy: runs-on: ubuntu-latest diff --git a/.github/workflows/preview.yml b/.github/workflows/preview.yml index 9ceca9b..9e465c9 100644 --- a/.github/workflows/preview.yml +++ b/.github/workflows/preview.yml @@ -12,7 +12,15 @@ permissions: contents: write pull-requests: write -concurrency: preview-${{ github.ref }} +# Use a single shared concurrency group so all runs that write to gh-pages are +# serialised. "preview-${{ github.ref }}" only serialises per PR, which still +# allows concurrent writes from different PRs (or synchronize vs. closed events) +# and causes "remote contains work not present locally" / rebase conflicts. +# cancel-in-progress: false ensures queued runs still execute (important for +# the "closed" event that removes a preview). +concurrency: + group: gh-pages + cancel-in-progress: false jobs: deploy-preview: