Repository navigation
fix(ci): pin standards reusables to default-branch HEAD - #177
Conversation
This repo's standards reusable pins are re-pointed at the standards default-branch HEAD, resolved live at sweep time. The prior refs are recorded in the verification line below. Three kinds of drift are repaired together and the body does not claim which one this repo had: an UNREACHABLE sha kills the run at workflow STARTUP, so GitHub reports no check at all rather than a failing one and the gate disappears instead of going red; a FLOATING ref (@main) is unpinned supply chain; a merely STALE but reachable sha silently reintroduces every bug fixed since it. files=5 pins=5 perms=0 permlines=0 from=257869d3061d5a8ed1529bf34225d90a2416d51a,fad242d35291de1898242d6737ba02b74a59a2f2 target=8f2ee508 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0178nN4Nm3neFRy5K9StZKnB
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (5)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📜 Recent review details
|
| Layer / File(s) | Summary |
|---|---|
Update reusable workflow pins .github/workflows/elixir-ci.yml, .github/workflows/governance.yml, .github/workflows/mirror.yml, .github/workflows/scorecard.yml, .github/workflows/secret-scanner.yml |
The Elixir CI, governance, mirror, Scorecards, and secret-scanner jobs now use the updated pinned commit. |
Priority: ⬇️ Low
Estimated code review effort: 1 (Trivial) | ~3 minutes
Merge Risk: ⚪ Minimal · up to 9ae92
This updates five reusable GitHub Actions workflow pins to a single immutable standards commit while retaining the existing workflow configuration. No current merge-blocking risk is identified.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
| Check name | Status | Explanation |
|---|---|---|
| Title check | ✅ Passed | The title clearly and concisely describes the main change: pinning CI reusable workflows to the standards default-branch HEAD. |
| Description check | ✅ Passed | The description directly explains the reusable-workflow pin updates, the previous and target commits, the reason for the change, and the verification results. |
| Docstring Coverage | ✅ Passed | No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0… |
| Linked Issues check | ✅ Passed | Check skipped because no linked issues were found for this pull request. |
| Out of Scope Changes check | ✅ Passed | Check skipped because no linked issues were found for this pull request. |
✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
❌ Error running CI fixer.
- Create stacked PR
- Commit on current branch
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
A rabbit checks each workflow pin
The newer commit settles in
CI, governance, mirror too
Scorecards and scanning follow through
Five small hops, the checks begin
Comment @coderabbitai help to get the list of available commands.
|
✅ Coding Agent task started: View task and status The task will inspect the CI failures, validate its fix, and open a stacked fix pull request automatically.
⏭️ 6 check(s) skipped — already failing on `main` (not caused by this PR)
|
Rate Limit Exceeded
|
A patch-application sweep left `.rej` and `.orig` files committed under `.github/workflows/`. GitHub only reads `.yml` from that directory, so they are inert — but they are actively misleading, and one is dangerous if anyone ever re-applies it. ## Every rejected hunk is an obsolete pin bump They target `892497fe` / `7fdc2705` / `d135b05b` / `81dbf2dd` / `c65436ee`, all superseded by the current governance pin. Open PR #177 already moves these same five workflows to the live target, so re-applying any of this debris would move pins **backwards**. ## `scorecard.yml.rej` is worse than obsolete Its hunk rewrites the permissions block to: ```yaml jobs: analysis: permissions: contents: read security-events: write ``` That is unparseable. It is the same naive string-splicing permissions sweep that left `scorecard.yml` invalid in ten other repositories. An unparseable workflow does not fail its gate — it produces **zero jobs and therefore no check at all**, so the repo scores *greener* than a repaired one. This repo escaped only because the hunk rejected instead of applying. ## Verified before deleting - All 20 live workflows under `.github/workflows/` parse as valid YAML, `scorecard.yml` included — no live file depends on this debris and no unlanded fix is discarded. - Touches only `.rej`/`.orig` paths. **No overlap** with the five `.yml` files PR #177 edits, so the two cannot conflict. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_0178nN4Nm3neFRy5K9StZKnB Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Re-points this repo's
hyperpolymath/standardsreusable-workflow pins at the standards default-branch HEAD,8f2ee50841e216cd8c192eeb68953118190f105c.Why this is not a routine version bump.
uses: org/repo/.github/workflows/x.yml@<ref>is resolved at workflow startup, so a bad ref is not a failing job — it is no job at all. This campaign repairs three kinds of drift and does not assume which one this repo had:gh pr checkssimply lists fewer rows. A repo in this state looks greener than one with working gates;@mainruns, but unpinned — the supply-chain property the estate pins for is absent;The refs this repo was actually pinned to, before this PR:
257869d3061d5a8ed1529bf34225d90a2416d51a fad242d35291de1898242d6737ba02b74a59a2f2.Expect this PR to surface failures that main does not show. Those failures are revealed, not introduced — they are the gates resuming work after being silently absent. The honest comparison is the set of check names emitted here versus on
main, not pass/fail counts. On the canary (hyperpolymath/empty-linter#79) the governance suite was absent on main and emitted 25 checks once repaired.The target is default-branch HEAD resolved at sweep time, never a sha copied from a plan: a reachable but non-HEAD sha silently reintroduces every bug fixed since it.
Engine:
.git-private-farm/scripts/smtp-notify-sweep.sh --campaign campaigns/pin-repair.sh. Verification for this repo:files=5 pins=5 perms=0 permlines=0 from=257869d3061d5a8ed1529bf34225d90a2416d51a,fad242d35291de1898242d6737ba02b74a59a2f2 target=8f2ee508 sig=G 9ae920b canon=a7325fbdc356 base=main🤖 Generated with Claude Code
https://claude.ai/code/session_0178nN4Nm3neFRy5K9StZKnB