chore(ci): retry the gitleaks release download on transient 5xx - #245
Merged
Merged
Conversation
A single curl made a REQUIRED check fail in 3s when GitHub's release CDN returned a 504 (run 32473558686, release PR #176) — on a diff that could not possibly contain a secret — and the only recovery was a human re-run. Adds --retry 3 --retry-delay 2 --retry-all-errors to the install step's curl, per the issue. --retry-all-errors is the load-bearing flag: under -f a clean HTTP 504 response exits 22 without being retried by plain --retry. Audit of the sibling pinned-binary installs in this workflow: Trivy (aquasecurity/trivy-action), semgrep (container image), OSV-Scanner (google/osv-scanner-action) and TruffleHog (pinned action) download nothing with curl — the gitleaks step was the only release-tarball download in ci.yml. Same gap exists in security-audit.yml's identical gitleaks install step (out of this PR's stated scope; flagged for a follow-up). Validated: actionlint clean on the workflow; run block bash -n clean.
|
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.



Closes #177.
What
The gitleaks install curl in
.github/workflows/ci.ymlgains--retry 3 --retry-delay 2 --retry-all-errors. The last flag is the point: under-sSf, a clean HTTP 504 exits 22 and plain--retrydoes not retry it —--retry-all-errorsis what covers the transient 5xx that failed this REQUIRED check in 3s on a PR whose diff could not contain a secret (run 32473558686).Audit
Within
ci.yml, gitleaks was the only release-tarball download — the sibling installs (Trivy/semgrep/OSV/TruffleHog actions) curl nothing. Found out of this PR's scope:security-audit.ymlcarries the byte-identical install step with the same gap — filed as a follow-up issue.How tested
actionlintclean on the workflow; the parsed run block passesbash -n.Manual review record (review-gate outage)
The push-time review gate is DOWN org-wide since 2026-09-05T23:29Z: its reviewer shell-out (
claude -p) is refused with "Your organization has disabled Claude subscription access for Claude Code" (exit 1, cost 0), reproduced independently by two agents with trivial prompts on sonnet and haiku; noANTHROPIC_API_KEYfallback is configured. This PR was therefore not reviewed by the automated reviewer: the pushes were made withRUMI_REVIEW_FAIL_OPEN=1, and the gate wrote no verdict entries for them.Per the workspace discipline ("if a PR was not pushed from a gated clone, review it manually before merging"), a manual review was performed instead by the coordinating agent before this PR was opened: full diff read against
origin/develop, issue prescription cross-checked, repo conventions checked, and the test oracle re-run independently (not taken from the implementing agent's word alone). CI, the Sonar PR quality gate, review-thread and merge-gate checks (scripts/pr-merge-gate.sh) remain fully enforced and are unaffected by the outage.If you would rather this wait for the reviewer to come back: hold the merge; the branch is complete and gated checks will run regardless.