Skip to content

Commit 6677d34

Browse files
fix(ci): pin third-party actions to full commit SHAs (#551)
fix(ci): pin third-party actions to full commit SHAs The account's Actions policy requires a full-length SHA ref. A tag or branch ref is refused at startup — `startup_failure`, no jobs, "this workflow graph cannot be shown" — so these workflows could not run at all. This resolves each ref to the commit it currently points at and records the ref in a trailing comment, e.g. `actions/checkout@<sha> # v4`. `dtolnay/rust-toolchain` takes its toolchain from the ref itself, so those steps also gained an explicit `with: toolchain:` input; without it, a SHA ref would silently lose the channel. No behaviour is intended to change beyond the pins.
1 parent b9dda17 commit 6677d34

15 files changed

Lines changed: 42 additions & 40 deletions

‎.github/workflows/boj-build.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
timeout-minutes: 10
1414
steps:
1515
- name: Checkout
16-
uses: actions/checkout@v7.0.1
16+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1717
- name: Trigger BoJ Server (Casket/ssg-mcp)
1818
run: |
1919
# Send a secure trigger to boj-server to build this repository

‎.github/workflows/casket-pages.yml‎

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,20 +25,20 @@ jobs:
2525
contents: read
2626
steps:
2727
- name: Checkout
28-
uses: actions/checkout@v7.0.1
28+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
2929
with:
3030
persist-credentials: false
3131

3232
- name: Checkout casket-ssg
33-
uses: actions/checkout@v7.0.1
33+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
3434
with:
3535
repository: hyperpolymath/casket-ssg
3636
ref: cec3c20d80ea1dc93660b69a4e7b38aa49f2a56b # standalone build; optional liblol bridge
3737
path: .casket-ssg
3838
persist-credentials: false
3939

4040
- name: Cache Cabal
41-
uses: actions/cache@v6.1.0
41+
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
4242
with:
4343
path: |
4444
~/.cabal/packages
@@ -48,7 +48,7 @@ jobs:
4848

4949
# Explicitly allowed by repository policy; actions.lock pins its commit.
5050
- name: Select tested Haskell toolchain
51-
uses: haskell-actions/setup@v2.12.0
51+
uses: haskell-actions/setup@6037f33647c3f17758a2356c80fc4a53d7e0685d # v2.12.0
5252
with:
5353
ghc-version: '9.6.6'
5454
cabal-version: '3.10.3.0'
@@ -116,10 +116,10 @@ jobs:
116116
touch ../_site/.nojekyll
117117
118118
- name: Setup Pages
119-
uses: actions/configure-pages@v6.0.0
119+
uses: actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d # v6.0.0
120120

121121
- name: Upload artifact
122-
uses: actions/upload-pages-artifact@v5.0.0
122+
uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5.0.0
123123
with:
124124
path: '_site'
125125

@@ -134,7 +134,7 @@ jobs:
134134
contents: read
135135
steps:
136136
- name: Download Pages artifact
137-
uses: actions/download-artifact@v8.0.1
137+
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
138138
with:
139139
name: github-pages
140140
path: .pages-preview
@@ -203,4 +203,4 @@ jobs:
203203
steps:
204204
- name: Deploy to GitHub Pages
205205
id: deployment
206-
uses: actions/deploy-pages@v5.0.1
206+
uses: actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346 # v5.0.1

‎.github/workflows/codeql.yml‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,15 +45,15 @@ jobs:
4545

4646
steps:
4747
- name: Checkout
48-
uses: actions/checkout@v7.0.1
48+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
4949

5050
- name: Initialize CodeQL
51-
uses: github/codeql-action/init@v4.38.0
51+
uses: github/codeql-action/init@b96794f015dfd88f77b49b1c93e0fa7110f94c63 # v4.38.0
5252
with:
5353
languages: ${{ matrix.language }}
5454
build-mode: ${{ matrix.build-mode }}
5555

5656
- name: Perform CodeQL Analysis
57-
uses: github/codeql-action/analyze@v4.38.0
57+
uses: github/codeql-action/analyze@b96794f015dfd88f77b49b1c93e0fa7110f94c63 # v4.38.0
5858
with:
5959
category: "/language:${{ matrix.language }}"

‎.github/workflows/dogfood-gate.yml‎

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ jobs:
3030

3131
steps:
3232
- name: Checkout repository
33-
uses: actions/checkout@v7.0.1
33+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
3434

3535
- name: Check for A2ML files
3636
id: detect
@@ -47,7 +47,7 @@ jobs:
4747
4848
- name: Validate A2ML manifests
4949
if: steps.detect.outputs.count > 0
50-
uses: hyperpolymath/deed-ecosystem/validate-action@main
50+
uses: hyperpolymath/deed-ecosystem/validate-action@ed83d6927e8fb21431e403dbf6d7a4af96772746 # main
5151
with:
5252
path: '.'
5353
strict: 'false'
@@ -92,7 +92,7 @@ jobs:
9292

9393
steps:
9494
- name: Checkout repository
95-
uses: actions/checkout@v7.0.1
95+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
9696

9797
- name: Check for K9 files
9898
id: detect
@@ -109,7 +109,7 @@ jobs:
109109
110110
- name: Validate K9 contracts
111111
if: steps.detect.outputs.k9_count > 0
112-
uses: hyperpolymath/k9-ecosystem/validate-action@main
112+
uses: hyperpolymath/k9-ecosystem/validate-action@c1a34884054fabf0e9de81dbf68f4ba7874e85f1 # main
113113
with:
114114
path: '.'
115115
strict: 'false'
@@ -142,7 +142,7 @@ jobs:
142142

143143
steps:
144144
- name: Checkout repository
145-
uses: actions/checkout@v7.0.1
145+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
146146

147147
- name: Scan for invisible characters
148148
id: lint
@@ -207,7 +207,7 @@ jobs:
207207

208208
steps:
209209
- name: Checkout repository
210-
uses: actions/checkout@v7.0.1
210+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
211211

212212
- name: Check for Groove manifest
213213
id: groove
@@ -268,7 +268,7 @@ jobs:
268268

269269
steps:
270270
- name: Checkout repository
271-
uses: actions/checkout@v7.0.1
271+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
272272

273273
- name: Generate dogfooding scorecard
274274
run: |

‎.github/workflows/e2e.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
runs-on: ubuntu-latest
1818
timeout-minutes: 30
1919
steps:
20-
- uses: actions/checkout@v7.0.1
20+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
2121
- name: Install PyYAML (for workflow YAML validation)
2222
run: pip install pyyaml --quiet
2323
- name: Run E2E tests

‎.github/workflows/hypatia-dispatch-intake.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
contents: write # push received events to the findings-submissions inbox branch
2626
steps:
2727
- name: Checkout gitbot-fleet
28-
uses: actions/checkout@v7.0.1
28+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
2929
with:
3030
fetch-depth: 0
3131

‎.github/workflows/inbox-steward.yml‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ jobs:
291291

292292
steps:
293293
- name: Checkout gitbot-fleet
294-
uses: actions/checkout@v7.0.1
294+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
295295
with:
296296
fetch-depth: 0
297297

@@ -380,7 +380,7 @@ jobs:
380380

381381
steps:
382382
- name: Checkout gitbot-fleet
383-
uses: actions/checkout@v7.0.1
383+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
384384

385385
- name: Send dispatch to Hypatia
386386
env:

‎.github/workflows/instant-sync.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
steps:
3030
- name: Trigger Propagation
3131
if: env.HAS_TOKEN == 'true'
32-
uses: peter-evans/repository-dispatch@v4.0.1
32+
uses: peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697 # v4.0.1
3333
with:
3434
token: ${{ secrets.FARM_DISPATCH_TOKEN }}
3535
repository: hyperpolymath/.git-private-farm

‎.github/workflows/learning-loop.yml‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626

2727
steps:
2828
- name: Checkout gitbot-fleet
29-
uses: actions/checkout@v7.0.1
29+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
3030
with:
3131
lfs: true # shared-context/learning/*.jsonl is LFS-tracked (Item 60)
3232

@@ -42,7 +42,7 @@ jobs:
4242
4343
- name: Upload rule proposals
4444
if: always()
45-
uses: actions/upload-artifact@v7.0.1
45+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
4646
with:
4747
name: rule-proposals
4848
path: shared-context/learning/rule-proposals/*.lgt

‎.github/workflows/pages.yml‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ jobs:
2323
image: ghcr.io/stefan-hoeck/idris2-pack@sha256:f0758996a931fb35d9ecb1de273c4d59dabe2a09b433afc7e357f65a08b7e1ff
2424
steps:
2525
- name: Checkout Site
26-
uses: actions/checkout@v7.0.1
26+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
2727
- name: Checkout Ddraig SSG
28-
uses: actions/checkout@v7.0.1
28+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
2929
with:
3030
repository: hyperpolymath/ddraig-ssg
3131
path: .ddraig-ssg
@@ -42,7 +42,7 @@ jobs:
4242
fi
4343
./.ddraig-ssg/build/exec/ddraig build src _site https://hyperpolymath.github.io/${GITHUB_REPOSITORY#*/}
4444
- name: Upload artifact
45-
uses: actions/upload-pages-artifact@v5.0.0
45+
uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5.0.0
4646
with:
4747
path: '_site'
4848
deploy:
@@ -55,4 +55,4 @@ jobs:
5555
steps:
5656
- name: Deploy to GitHub Pages
5757
id: deployment
58-
uses: actions/deploy-pages@v5.0.1
58+
uses: actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346 # v5.0.1

0 commit comments

Comments
 (0)