diff --git a/.github/workflows/ci-test.yml b/.github/workflows/ci-test.yml index 5aaccc1519..26149785da 100644 --- a/.github/workflows/ci-test.yml +++ b/.github/workflows/ci-test.yml @@ -70,6 +70,11 @@ jobs: - name: Setup Bun uses: ./.github/actions/setup-bun + with: + # ci-typecheck.yml's Linux job is the designated Linux cache + # saver (runs on every push, fast, low collision risk) — this job + # only restores, to avoid racing on the same {OS}-bun-{hash} key. + save-cache: false - name: Configure Git Identity run: | diff --git a/.github/workflows/release-fork.yml b/.github/workflows/release-fork.yml index 5e3c59f4ac..50ad2b689e 100644 --- a/.github/workflows/release-fork.yml +++ b/.github/workflows/release-fork.yml @@ -87,6 +87,13 @@ jobs: - name: Setup Bun if: inputs.platforms == '' || contains(inputs.platforms, matrix.name) uses: ./.github/actions/setup-bun + with: + # Linux and Windows bun caches are each owned by a single saver + # elsewhere (ci-typecheck.yml linux, ci-test.yml e2e windows) to + # avoid racing on the same {OS}-bun-{hash} key when this manual + # release build runs concurrently with a push-triggered CI run. + # macOS has no other job in the repo, so it's safe to save here. + save-cache: ${{ matrix.name == 'macos' }} - name: Build CLI if: inputs.platforms == '' || contains(inputs.platforms, matrix.name)