Skip to content

Commit 5cd7810

Browse files
committed
ci: resolve the bun version from package.json in every workflow
Nine setup-bun steps had no version pinned, so they installed whatever Bun was newest at run time: the whole of Code Quality (biome, typecheck, claw-api-codegen, claw-api-contract, fallow), both Tests jobs, Audit, and the Turbo cache warmer. Those are the workflows that gate merges, so a Bun release could change install layout, resolution, or test behaviour with no commit and no warning. It also let Tests pass on a Bun the release workflows never use. The remaining six hardcoded "1.3.6" in YAML, a third place to keep in sync with what the repo already declares. All fifteen now read the version from the existing source of truth: packageManager: "bun@1.3.6" setup-bun's bun-version-file accepts package.json and prefers packageManager, falling back to engines.bun. Both are present and agree, so behaviour for the six release workflows is unchanged. Bumping Bun for the entire repo is now a one-line change. Every workflow was parsed to confirm valid YAML and that each setup-bun step resolves from the file with no leftover literal: 15 steps, 0 problems.
1 parent 2f03bf9 commit 5cd7810

10 files changed

Lines changed: 24 additions & 6 deletions

.github/workflows/audit.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ jobs:
1919

2020
- name: Setup Bun
2121
uses: oven-sh/setup-bun@v2
22+
with:
23+
bun-version-file: packages/browseros-agent/package.json
2224

2325
- name: Install dependencies
2426
run: bun ci

.github/workflows/build-browseros.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -237,7 +237,7 @@ jobs:
237237
if: inputs.resource-mode == 'source' && inputs.product == 'browseros'
238238
uses: oven-sh/setup-bun@v2
239239
with:
240-
bun-version: "1.3.6"
240+
bun-version-file: packages/browseros-agent/package.json
241241

242242
- name: Install BrowserOS server dependencies
243243
if: inputs.resource-mode == 'source' && inputs.product == 'browseros'

.github/workflows/code-quality.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ jobs:
2626

2727
- name: Setup Bun
2828
uses: oven-sh/setup-bun@v2
29+
with:
30+
bun-version-file: packages/browseros-agent/package.json
2931

3032
# Run Biome through the repo's own lint script (bunx @biomejs/biome) so CI
3133
# uses the exact same Biome as local `bun run lint`, instead of a version
@@ -52,6 +54,8 @@ jobs:
5254

5355
- name: Setup Bun
5456
uses: oven-sh/setup-bun@v2
57+
with:
58+
bun-version-file: packages/browseros-agent/package.json
5559

5660
- name: Start Turbo remote cache (GitHub Actions cache)
5761
uses: rharkor/caching-for-turbo@2238fae6eb9a9936f92356f54cb3660200d105e7 # v2.5.1
@@ -89,6 +93,8 @@ jobs:
8993

9094
- name: Setup Bun
9195
uses: oven-sh/setup-bun@v2
96+
with:
97+
bun-version-file: packages/browseros-agent/package.json
9298

9399
- name: Setup Biome
94100
uses: biomejs/setup-biome@v2
@@ -121,6 +127,8 @@ jobs:
121127

122128
- name: Setup Bun
123129
uses: oven-sh/setup-bun@v2
130+
with:
131+
bun-version-file: packages/browseros-agent/package.json
124132

125133
- name: Setup Rust
126134
run: |
@@ -160,6 +168,8 @@ jobs:
160168

161169
- name: Setup Bun
162170
uses: oven-sh/setup-bun@v2
171+
with:
172+
bun-version-file: packages/browseros-agent/package.json
163173

164174
- name: Install dependencies
165175
run: bun ci

.github/workflows/release-claw-onboard.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ jobs:
226226
- name: Setup Bun
227227
uses: oven-sh/setup-bun@v2
228228
with:
229-
bun-version: "1.3.6"
229+
bun-version-file: packages/browseros-agent/package.json
230230

231231
- name: Install browseros-agent dependencies
232232
working-directory: packages/browseros-agent

.github/workflows/release-cli.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626

2727
- uses: oven-sh/setup-bun@v2
2828
with:
29-
bun-version: "1.3.6"
29+
bun-version-file: packages/browseros-agent/package.json
3030

3131
- name: Validate release tag
3232
id: release

.github/workflows/release-extensions.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -376,7 +376,7 @@ jobs:
376376
- name: Setup Bun
377377
uses: oven-sh/setup-bun@v2
378378
with:
379-
bun-version: "1.3.6"
379+
bun-version-file: packages/browseros-agent/package.json
380380

381381
- name: Stamp in-repository extension version
382382
if: ${{ inputs.extension == 'agent' || inputs.extension == 'browserclaw' }}

.github/workflows/release-macos.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,7 @@ jobs:
268268
if: steps.inputs.outputs.resource_mode == 'source' && steps.inputs.outputs.products == 'browseros'
269269
uses: oven-sh/setup-bun@v2
270270
with:
271-
bun-version: "1.3.6"
271+
bun-version-file: packages/browseros-agent/package.json
272272

273273
- name: Install BrowserOS server dependencies
274274
if: steps.inputs.outputs.resource_mode == 'source' && steps.inputs.outputs.products == 'browseros'

.github/workflows/release-server.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,7 @@ jobs:
267267
- name: Setup Bun
268268
uses: oven-sh/setup-bun@v2
269269
with:
270-
bun-version: "1.3.6"
270+
bun-version-file: packages/browseros-agent/package.json
271271

272272
- name: Install Wine
273273
run: |

.github/workflows/test.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,8 @@ jobs:
5252

5353
- name: Setup Bun
5454
uses: oven-sh/setup-bun@v2
55+
with:
56+
bun-version-file: packages/browseros-agent/package.json
5557

5658
- name: Install dependencies
5759
run: bun ci
@@ -82,6 +84,8 @@ jobs:
8284

8385
- name: Setup Bun
8486
uses: oven-sh/setup-bun@v2
87+
with:
88+
bun-version-file: packages/browseros-agent/package.json
8589

8690
- name: Setup Rust
8791
if: matrix.needs_rust == true

.github/workflows/turbo-cache-warm.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,8 @@ jobs:
4242

4343
- name: Setup Bun
4444
uses: oven-sh/setup-bun@v2
45+
with:
46+
bun-version-file: packages/browseros-agent/package.json
4547

4648
- name: Start Turbo remote cache (GitHub Actions cache)
4749
uses: rharkor/caching-for-turbo@2238fae6eb9a9936f92356f54cb3660200d105e7 # v2.5.1

0 commit comments

Comments
 (0)