ci: revert Renovate — close the composite-refs gap in the existing radar#38
Merged
Merged
Conversation
Deletes the reusable renovate.yml. The self-hosted Renovate machine (dashboard, per-consumer renovate.json5, status-check/token-scope surface) was far more than the one gap that bit us: composite action.yml refs Dependabot can't read (dependabot-core#6704). New opt-in composite-refs job in the reusable upgrade-check.yml sweeps every whuppi/ci ref (workflows + composites, uniform) to the latest release and pins third-party composite actions to SHA via pinact. Dependabot keeps pub + third-party actions in workflow files; no overlap. Adds pinact to the pinned tool supply chain; renames the org secret RENOVATE_TOKEN -> CI_ACTIONS_TOKEN.
This comment has been minimized.
This comment has been minimized.
slopfairy
approved these changes
Jul 24, 2026
slopfairy
left a comment
There was a problem hiding this comment.
Tip
Approved — focused replacement that closes the composite-refs gap with a tenth of the surface area Renovate required
🟡 Suggestions — optional, take it or leave it
.github/workflows/upgrade-check.ymlline ~260 (pinact step) — thecomposite-refsjob callsgo installandgo env GOPATH, which requires Go on the runner. The defaultubuntu-24.04has it, butruns-onis an open input a consumer can override. A consumer picking a macOS or Windows runner without Go would hit a hard failure. Consider documenting this in thesweepActionsinput comment, or guarding with acommand -v gocheck and a clear error.
✅ Checked
- Security: no
pull_request_target, no untrusted input inrun:blocks. Thelatestrelease tag fromgh apiis validated against^v[0-9]+\.[0-9]+\.[0-9]+$before landing insed— proper injection guard.CI_ACTIONS_TOKEN(PAT) handles writes whileGITHUB_TOKENstays atcontents: readfor pinact's API reads. Both checkouts usepersist-credentials: false. - Supply chain:
PINACT_VERSION="4.1.0"intool/versions.env, tracked bytool/ci/upgrade.shand bumped byself-upgrade.yml— same pattern asACTIONLINT_VERSIONandZIZMOR_VERSION. Go module checksum provides integrity; no separate hash needed. - Internal refs:
ref: mainon the whuppi/ci checkout passesinternal-refs-are-main. The@mainref onuses: whuppi/ci/actions/capabilities/fvm@main(line 186, existing) is untouched. - Conventional commit:
ci:type is intool/commit-types.txt. Title format passes. - Bash safety:
set -euo pipefailon all three run blocks. Quoted expansions, heredoc output passing, no bare variable references. Shellcheck is reported clean. - Division of labour: Dependabot keeps pub deps + third-party actions in workflow files;
composite-refsowns only whuppi/ci refs (uniform across workflows and composites) + third-party actions inside compositeaction.yml. The--exclude '^whuppi/ci/'on pinact and thegrep -rlEsweep pattern agree — no overlap, no double-bump. - Documentation: CHANGELOG, UPDATING.md, and in-file comments are all accurate and match the code.
- Dependabot config:
.github/dependabot.ymlis unchanged, correctly — whuppi/ci's own actions dirs are still scanned by Dependabot (this repo doesn't use the composite-refs job on itself). - deploy changes:
secrets.json.examplekey rename matches;secrets.shcomment update is accurate. No logic changes.
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.
Reverts the 2.2.0 Renovate migration and closes the one gap it existed for (composite
action.ymlrefs Dependabot can't see, dependabot-core#6704) directly in the existing upgrade radar.What changes
renovate.yml. The self-hosted Renovate machine — dashboard issue, per-consumerrenovate.json5, status-check + token-scope surface — was far more than the single blind spot it was brought in for.composite-refsjob in the reusableupgrade-check.yml:whuppi/ci/…@vX.Y.Zref across.github(workflows and composites) to the latest release — uniform, so the pin never splits;actions/cache) to the latest SHA viapinact.sweepActions: true+CI_ACTIONS_TOKENand addswhuppi/ci*to its Dependabotignore.composite-refsowns whuppi/ci refs everywhere + third-party actions in composites.pinactto the pinned tool supply chain (PINACT_VERSION), owned byself-upgrade.ymllike actionlint/zizmor.RENOVATE_TOKEN→CI_ACTIONS_TOKEN(same Workflows-scope PAT).secrets.sh'sorgscope stays — it's generic.Verified locally
actionlint+zizmor --persona=auditor: clean across all workflows.pinact run --update --exclude '^whuppi/ci/'proven against pdf's real composites: bumps the frozenactions/cache@v5.0.5 → v6.1.0in both composites, leaves whuppi/ci refs untouched.shellcheckclean onupgrade.sh.Cut as v2.3.0 on merge (the CHANGELOG top heading is in the diff).