Skip to content

fix(pre-commit-advisory): bump go-pre-commit to v4.6.1 for the install retry fix - #52

Merged
blairham merged 1 commit into
mainfrom
chore/bump-go-pre-commit-v4.6.1
Aug 5, 2026
Merged

fix(pre-commit-advisory): bump go-pre-commit to v4.6.1 for the install retry fix#52
blairham merged 1 commit into
mainfrom
chore/bump-go-pre-commit-v4.6.1

Conversation

@blairham

@blairham blairham commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Bump blairham/go-pre-commit v4.6.0v4.6.1 in pre-commit-advisory.yml, moving both the uses: ref (which carries the fixed install script) and the version: input (which selects the downloaded release) together so they can't drift.
  • v4.6.0's install step used curl -fsSL --retry 3, which only retries transient HTTP responses (5xx/408/429) and timeouts. A mid-transfer curl: (35) Recv failure: Connection reset by peer is a transport error, so curl exited immediately without ever using its retry budget — it failed the install and turned an otherwise-green k5s main red (run 30964880559).
  • v4.6.1 adds --retry-all-errors (and raises --retry to 5), extending the budget to the failure class we actually hit.

Why this, after #51

#51 stopped that class of failure from reddening a caller's default branch. It did not stop the flake: the seed run still fails, so PRs still pay a cold cache. This is the half that actually fixes the cause. The two are complementary — retry the download, and don't let a seed-run failure gate anything.

Risk

As narrow as it looks. v4.6.0..v4.6.1 touches only the action's own action.yml (2 lines):

 action.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

No Go source changed, so the installed pre-commit binary is behaviorally identical — no hook-execution or cache-layout risk. Upstream: blairham/go-pre-commit#33.

Test plan

  • actionlint clean
  • YAML parses
  • No stale v4.6.0 references left anywhere in the repo
  • Confirmed v4.6.0..v4.6.1 is action.yml-only (no binary behavior change)
  • First caller PR run after merge installs v4.6.1 cleanly and the advisory comment still posts
  • First caller push-to-main run seeds caches as before

🤖 Generated with Claude Code

…l retry fix

v4.6.0's install step fetched the release archive with `curl -fsSL --retry 3`,
which only retries transient HTTP responses (5xx, 408, 429) and timeouts. A
connection reset mid-transfer is a transport-level error, so curl exited 35
immediately without ever using its retry budget:

    curl: (35) Recv failure: Connection reset by peer

That failed the install step and turned an otherwise-green k5s main red
(run 30964880559); a plain re-run went green with no change. #51 stopped that
class of failure from reddening a caller's default branch, but the seed run
still fails and the PR path still pays a cold cache — this is the half that
actually stops the flake.

v4.6.1 adds `--retry-all-errors` (and raises --retry to 5), which extends the
budget to the transport failures we actually hit.

The bump is as narrow as it looks: v4.6.0..v4.6.1 touches only the action's
own action.yml (2 lines). No Go source changed, so the installed pre-commit
binary is byte-for-byte equivalent in behavior — no hook-execution or
cache-layout risk. Both the `uses:` ref (which carries the fixed install
script) and the `version:` input (which selects the downloaded release) move
together so they can't drift.
@blairham
blairham merged commit 2573dcb into main Aug 5, 2026
2 checks passed
@blairham
blairham deleted the chore/bump-go-pre-commit-v4.6.1 branch August 5, 2026 02:15
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.

1 participant