From b983bde2672cd86d1b2d5c73419cd9ba9cf4ca30 Mon Sep 17 00:00:00 2001 From: Haksung Jang Date: Thu, 2 Jul 2026 14:35:53 +0900 Subject: [PATCH] ci(release): serialize the desktop publish matrix to avoid duplicate releases The publish-desktop matrix ran windows and macos with `electron-builder --publish always` concurrently. When both legs published at once, each created its own GitHub release for the same tag, splitting the v1.1.2 assets across two releases (the Windows installer landed on a duplicate, not the "Latest" one). max-parallel: 1 serializes the legs so the second uploads to the release the first already created. --- .github/workflows/release.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 869500c..45a2178 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -21,6 +21,11 @@ jobs: contents: write # Upload installers to GitHub Releases strategy: fail-fast: false + # Serialize the OS legs: both run `electron-builder --publish always`, and publishing + # concurrently let each leg create its own GitHub release for the same tag (a race that + # split the v1.1.2 assets across two releases). max-parallel: 1 makes the second leg find + # and upload to the release the first leg already created. + max-parallel: 1 matrix: os: [windows-latest, macos-latest] runs-on: ${{ matrix.os }}