Skip to content

ci: reference the org alias instead of a pinned commit - #85

Merged
msalvatti merged 1 commit into
mainfrom
ci/reference-the-org-alias-not-a-commit
Aug 8, 2026
Merged

ci: reference the org alias instead of a pinned commit#85
msalvatti merged 1 commit into
mainfrom
ci/reference-the-org-alias-not-a-commit

Conversation

@msalvatti

Copy link
Copy Markdown
Member

Returns the bymaxone/.github references to the moving @v1 alias. Third-party actions stay pinned to a commit — that distinction is the whole point.

Why this is a revert

Pinning these was defensible in isolation: Scorecard flags a moving tag, and GitHub's guidance recommends SHA-pinning without carving out first-party repositories.

It was still wrong here, for a reason that only shows up at organization scale:

  • It removes the reason the shared repository exists. A CI fix is supposed to land once and reach every repository. Pinned, it reaches none of them until someone bumps each one.
  • Dependabot treats each reusable workflow path as a separate dependency. Ten libraries × ~6 references is ~58 pull requests to propagate one change, throttled by open-pull-requests-limit: 5 per repository per week.
  • Those pull requests are merged in bulk. So the review the pinning was supposed to buy does not actually happen — the latency and the noise are paid for, and the benefit is not collected.

What replaces it as the control

The gap was never the pinning. It was that v1 had become a synonym for main: merging published immediately, and on 2026-08-07 eight commits to the shared repository became eight silent deploys to every consumer.

bymaxone/.github#28 closes that — v1 now moves only when a vN.Y.Z tag is pushed, that tag must be an ancestor of the default branch, and v*.*.* is immutable by ruleset. Publishing is a deliberate act; the alias is what consumers follow.

Where pinning is still correct

Unchanged in this pull request, and verified as unchanged:

actions/checkout@3d3c42e…      github/codeql-action/*@f205ea1…
actions/setup-node@8207627…    ossf/scorecard-action@2d11466…
pnpm/action-setup@0ebf471…     step-security/harden-runner@bf7454d…

Those are outside the organization. That is where the supply-chain risk lives, and none of them moved.

Verification

Every touched file parses as YAML; the uses: count is unchanged per file; the third-party pin count is asserted identical before and after; and no bymaxone/.github reference is left on a commit.

Pinning the bymaxone/.github references by commit removed the reason the shared
repository exists: a CI fix lands once and every repository gets it. Pinned, it
reaches none of them until each is bumped, and Dependabot treats each reusable
workflow path as its own dependency — roughly 58 pull requests across the
libraries to propagate a single change, merged in bulk, so the review they were
meant to buy never happens.

The gap was never the pinning. It was that v1 had become a synonym for main:
merging published immediately. bymaxone/.github#28 makes v1 move only when a
version tag is pushed, and v*.*.* is immutable by ruleset.

Third-party actions stay pinned to a commit, which is where the supply-chain
risk actually is. Their count is asserted unchanged.
Copilot AI lite review requested due to automatic review settings August 8, 2026 00:28

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates this repository’s GitHub Actions workflows to reference the organization’s reusable workflows/actions via the moving @v1 alias (instead of a pinned commit), while keeping third-party actions pinned to SHAs.

Changes:

  • Switched reusable workflow references (bymaxone/.github/.github/workflows/*) from a pinned commit SHA to @v1.
  • Switched the shared setup action reference (bymaxone/.github/.github/actions/setup-node-pnpm) from a pinned commit SHA to @v1.
  • Removed the now-misleading “# v1” comment that previously annotated a pinned SHA.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
.github/workflows/peer-advisory-drift.yml Updates the reusable workflow reference to bymaxone/.github@v1.
.github/workflows/codeql.yml Updates the reusable workflow reference to bymaxone/.github@v1.
.github/workflows/ci.yml Updates reusable workflow and shared setup action references to @v1 across CI jobs.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@msalvatti
msalvatti merged commit 5fe9262 into main Aug 8, 2026
20 checks passed
@msalvatti
msalvatti deleted the ci/reference-the-org-alias-not-a-commit branch August 8, 2026 00:36
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