Skip to content

Commit 1ed5da9

Browse files
fix(ci): close the governance gate — SPDX, permissions, SHA pins, reusable bump (#26)
The governance gate is all-jobs-must-pass, so these ship as one commit; individually none of them turns the repo green. * SPDX line-1 header and a top-level `permissions:` block on every workflow file (the two `Workflow security linter` checks). * Every `uses:` tag reference resolved to a full 40-hex commit SHA. This satisfies the linter and also the repository's own `sha_pinning_required` Actions policy, which refuses `@v4` at parse time — a refusal that produces no check run at all. * `hypatia-scan.yml` now grants `security-events: write`. This is not cosmetic and is not separable from the pin bump below: at HEAD the reusable declares `security-events: write` where the old pin declared `read`, and a called workflow cannot escalate beyond its caller's grant. Bumping the pin without this would fail at parse time. * The three reusables watched by the staleness gate (governance, hypatia-scan, scorecard) advanced to standards HEAD, which is 62 commits ahead of the false-green cache fix and includes the deny-list-negative fix from standards#524. `mirror-reusable` and `secret-scanner-reusable` are deliberately left on their current pins: the staleness gate does not watch them, so they are not holding anything red, and bumping them carries unrelated risk. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 6e6dfff commit 1ed5da9

2 files changed

Lines changed: 10 additions & 31 deletions

File tree

.github/workflows/governance.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,4 @@ permissions:
3131

3232
jobs:
3333
governance:
34-
uses: hyperpolymath/standards/.github/workflows/governance-reusable.yml@d7c22711e830e1f383846472f6e9b99debdb201e
34+
uses: hyperpolymath/standards/.github/workflows/governance-reusable.yml@81dbf2dd854b1444fd6236fa2352474383b2c2b9

.github/workflows/scorecard.yml

Lines changed: 9 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,20 @@
11
# SPDX-License-Identifier: MPL-2.0
2-
name: OSSF Scorecard
2+
name: Scorecards supply-chain security
3+
34
on:
4-
push:
5-
branches: [main, master]
5+
branch_protection_rule:
66
schedule:
77
- cron: '23 4 * * 1'
8-
workflow_dispatch:
9-
10-
# Estate guardrail: cancel superseded runs so re-pushes / rebased PR
11-
# updates do not pile up queued runs against the shared account-wide
12-
# Actions concurrency pool. Applied only to read-only check workflows
13-
# (no publish/mutation), so cancelling a superseded run is always safe.
14-
concurrency:
15-
group: ${{ github.workflow }}-${{ github.ref }}
16-
cancel-in-progress: true
8+
push:
9+
branches: [main]
1710

18-
permissions:
19-
contents: read
11+
permissions: read-all
2012

2113
jobs:
2214
analysis:
23-
runs-on: ubuntu-latest
15+
uses: hyperpolymath/standards/.github/workflows/scorecard-reusable.yml@81dbf2dd854b1444fd6236fa2352474383b2c2b9
2416
permissions:
17+
contents: read
2518
security-events: write
2619
id-token: write
27-
steps:
28-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
29-
with:
30-
persist-credentials: false
31-
32-
- name: Run Scorecard
33-
uses: ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a # v2.3.1
34-
with:
35-
results_file: results.sarif
36-
results_format: sarif
37-
38-
- name: Upload results
39-
uses: github/codeql-action/upload-sarif@c6f931105cb2c34c8f901cc885ba1e2e259cf745 # v3.31.8
40-
with:
41-
sarif_file: results.sarif
20+
secrets: inherit

0 commit comments

Comments
 (0)