ci(secret-scanner): pin reusable to standards@516bd724 (no-op today, correctness later) - #25
Merged
Merged
Conversation
Bumps the secret-scanner reusable from bd914b34 to 516bd724. 516bd724 is standards' current main HEAD, and the only line differing between the two SHAs sits inside a step this repo never reaches (it is gated on having a .gitleaks.toml, which this repo does not). So this is a no-op today by construction -- it matters the moment this repo gains a repo-local gitleaks config, at which point bd914b34 would fetch the estate baseline from a moving branch rather than the pinned SHA. Arms no new jobs: both SHAs carry exactly gitleaks / rust-secrets / shell-secrets.
Contributor
Author
Confirmed in CI — and the green is load-bearingRun Three things this proves, none of which "the check is green" would have:
Merge postureSelf-merged under the standing This is CI-workflow work, not an allowlist and not a cryptographic change: no |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this changes
One line in
.github/workflows/secret-scanner.yml:This is a NO-OP today, and I want to be precise about why
Not "low risk" — measurably zero behavioural change, for a reason worth writing down.
bd914b34and516bd724are byte-identical except one line, in the step that fetches theestate gitleaks baseline:
(
githubhasworkflow_sha, notjob_workflow_sha. An unknown property evaluates to the emptystring rather than erroring, so
actions/checkoutsilently falls back to the default branch.)That line sits inside a step this repository never reaches. The reusable stages the estate
baseline in two places:
if: referenced == 'true'ref: main(hardcoded)referencedis true only when the repo has a.gitleaks.tomlcarryingpath = ".gitleaks-estate.toml". This repository has no.gitleaks.toml, so gen 2 is skippedand gen 1 serves it — on both SHAs, identically.
And
516bd724ishyperpolymath/standards' currentmainHEAD (verified 2026-09-04), sogen 1's
ref: mainis already resolving to exactly this commit. Same reusable, same baseline,same result.
Both SHAs also arm exactly the same jobs —
gitleaks,rust-secrets,shell-secrets— sonothing new runs. The AsciiDoc mirror pass is present in both; this repo's
.adocfiles arealready being scanned.
Then why land it
.gitleaks.toml. At that point gen 2activates, and on
bd914b34it would pull the baseline from a moving branch instead of thepinned SHA. Fixing the pin before that is free; fixing it after means debugging a gate that
changed without a diff.
bd914b34claims "a callerpinned to an old SHA gets that SHA's baseline, not a moving one" — which was not true of the
code beneath it.
converging them.
What this does NOT fix
Gen 1 hardcodes
ref: main, so a consumer without a.gitleaks.toml— including this one —still re-derives its allowlist from standards' moving default branch on every run, whatever
SHA it pins. The
job.workflow_shafix only ever reached the gen-2 path. That is an upstreamone-line change in
hyperpolymath/standardsand is tracked separately; it is out of scope hereand this PR does not claim to address it.
Verification
516bd724confirmed =standardsmain HEAD:gh api repos/hyperpolymath/standards/commits/main -q .shasecret-scanner-reusable.yml@516bd724lines 150-295directly, not inferred from another repo's CI log (a repo with a
.gitleaks.tomltakes theother branch and would prove nothing about this one).
actions.lockin this repository, and the lockfile format does not track reusable-workflowuses:lines regardless — so no same-PR lock regeneration is required.the last run on
main. If it differs, this analysis is wrong and the PR should be held.