fix(pre-commit-advisory): bump go-pre-commit to v4.6.1 for the install retry fix - #52
Merged
Merged
Conversation
…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.
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.
Summary
blairham/go-pre-commitv4.6.0→v4.6.1inpre-commit-advisory.yml, moving both theuses:ref (which carries the fixed install script) and theversion:input (which selects the downloaded release) together so they can't drift.curl -fsSL --retry 3, which only retries transient HTTP responses (5xx/408/429) and timeouts. A mid-transfercurl: (35) Recv failure: Connection reset by peeris 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).--retry-all-errors(and raises--retryto 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.1touches only the action's ownaction.yml(2 lines):No Go source changed, so the installed
pre-commitbinary is behaviorally identical — no hook-execution or cache-layout risk. Upstream: blairham/go-pre-commit#33.Test plan
actionlintcleanv4.6.0references left anywhere in the repov4.6.0..v4.6.1is action.yml-only (no binary behavior change)v4.6.1cleanly and the advisory comment still posts🤖 Generated with Claude Code