Skip to content

ci: pin third-party actions to commit SHAs and add least-privilege permissions (REQ-1.4.10) - #18

Merged
OgeonX-Ai merged 1 commit into
mainfrom
ci/sha-pin-and-least-privilege
Jul 8, 2026
Merged

ci: pin third-party actions to commit SHAs and add least-privilege permissions (REQ-1.4.10)#18
OgeonX-Ai merged 1 commit into
mainfrom
ci/sha-pin-and-least-privilege

Conversation

@OgeonX-Ai

Copy link
Copy Markdown
Contributor

Summary

  • SHA-pin every third-party action uses: reference across ci.yml, codeql.yml, pages.yml, pr-lint.yml, and stale.yml.
  • codeql.yml was genuinely missing a permissions: block (top-level and job-level) — added, mirroring portfolio/cas-platform/.github/workflows/codeql.yml's structure exactly (top-level contents: read; job-level actions: read / contents: read / security-events: write on the analyze job).
  • ci.yml, pr-lint.yml, and stale.yml already carried job-level least-privilege permissions: blocks at execution time (added upstream between the plan's audit and this run) with scopes matching what the plan called for — left unchanged rather than duplicated.
  • contract-registry-live.yml untouched (already fully SHA-pinned with permissions).
  • No timeout-minutes changes — already present on all jobs.
  • No Azure deploy steps present in this repo's workflows, so the workflow_dispatch operator lock does not apply here.

Note: the SHA table in the originating plan (31-04) was resolved against @v4/@v3/@v5/@v8 tags on 2026-07-06, but this repo's workflows had already moved to newer tags (@v7/@v5/@v4/@v6/@v10/@v7) via prior dependabot merges. SHAs in this PR were re-resolved live via gh api repos/<owner>/<action>/commits/<tag> against the actual tags found in each file.

Test plan

  • powershell.exe -File scripts/workflow-lint.ps1 -Path portfolio/gsd-orchestrator -Json reports zero findings against this branch content.

Part of REQ-1.4.10 (Phase 31 org CI supply-chain hardening).

…rmissions (REQ-1.4.10)

- ci.yml, pages.yml, pr-lint.yml, stale.yml: SHA-pin all third-party actions
- codeql.yml: SHA-pin actions and add missing permissions (top-level
  contents: read; job-level actions/contents/security-events for analyze),
  mirroring portfolio/cas-platform/.github/workflows/codeql.yml
- ci.yml, pr-lint.yml, stale.yml already carried job-level least-privilege
  permissions blocks at time of execution (added upstream since the plan's
  audit) matching the scopes the plan called for; left unchanged
- contract-registry-live.yml untouched (already fully pinned + permissions)
- SHAs re-resolved live for current tags (v7/v5/v4/v6/v10/v7) as repo tags
  had moved ahead of the plan's interface table since it was authored
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@OgeonX-Ai
OgeonX-Ai enabled auto-merge (squash) July 8, 2026 17:02
@OgeonX-Ai
OgeonX-Ai merged commit b3d131e into main Jul 8, 2026
5 checks passed
@OgeonX-Ai
OgeonX-Ai deleted the ci/sha-pin-and-least-privilege branch July 8, 2026 17:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants