Fix-mode `--json` reports a `sha-as-ref` warning for a ref the same run just rewrote to a tag
Mantenedores costumam responder em até 1 dia
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 35/100
Direção de pesquisa
Start by tracing how --json=valid,findings gathers sha-as-ref findings and how the default fix run rewrites workflow uses: lines; the issue does not name implementation files or tests. Reproduce with the supplied workflow and compare the first run's JSON findings with the rewritten line and terminal summary. Done when the first run's JSON no longer reports a warning for the SHA it replaced; linked pull request #277 is already open.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
What happened
A default fix run that rewrites uses: owner/repo@<sha> # vX.Y.Z to uses: owner/[email protected] still emits a sha-as-ref warning in its --json output, keyed by the SHA that is no longer in the workflow.
The remediation says "pin to a tag instead", which is what the run just did. A second run reports nothing. The terminal summary of the same run shows no warning.
Steps to reproduce
mkdir repro && cd repro && git init -q
mkdir -p .github/workflows
cat > .github/workflows/ci.yml <<'EOF'
name: ci
on: push
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
EOF
gh actions-lock --no-interactive --json=valid,findings 2>/dev/null
First run output (workflow now reads uses: actions/[email protected]):
{
"cli_version": "v0.4.1",
"findings": [
{
"workflow": ".github/workflows/ci.yml",
"category": "sha-as-ref",
"severity": "warning",
"confidence": "high",
"dependency": "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1",
"detail": "pinned to a bare SHA without a symbolic ref — weakens supply-chain traceability",
"remediation": "pin to a tag instead: https://github.com/actions/checkout/releases",
"doc_url": "https://github.com/github/gh-actions-lock/blob/main/docs/troubleshooting.md#sha-as-ref"
}
],
"lockfile_version": "v0.0.3",
"valid": true
}
Second run of the same command: "findings": [].
Same first run without --json prints only the pin summary, no warning:
Scanning 1 workflow
Planning pins
Pinned 1 action across 1 workflow
actions/[email protected] (3d3c42e)
└─ .github/workflows/ci.yml
With --no-narrow the workflow is left as written and the warning is accurate, so this only affects the default rewrite path.
Expected
Post-fix JSON should not carry a warning whose subject the write removed. Either drop warnings the fix resolved, or re-evaluate sha-as-ref against the rewritten uses: lines.
Environment
- gh-actions-lock v0.4.1 (
gh extension install github/gh-actions-lock --pin v0.4.1), lockfile schema v0.0.3 - gh 2.x on macOS 26 (arm64), github.com
- Linguagem predominante
- Go
- Estrelas
- 317
- Forks
- 24
- Merge médio
- 1d 8h
- PRs com merge (30d)
- 50
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de github/gh-actions-lock
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
github/gh-actions-lock#271 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 38/100
github/gh-actions-lock#284 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 56/100
github/gh-actions-lock#281 · 1 reação ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 25/100
github/gh-actions-lock#280 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
github/gh-actions-lock#279 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de github/gh-actions-lock
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
oxc-project/tsgolint#1362 ·
Mantenedores costumam responder em até 1 dia
-
enhancement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
hashicorp/terraform-provider-google#30703 ·
Mantenedores costumam responder em até 1 dia
-
UpdateSchema.BuildUpdates should select newly added schemas with schema-id: -1Talvez já em andamento @nisan1101 assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
apache/iceberg-go#2586 · 1 comentário ·
Mantenedores costumam responder em até 2 dias
-
FR: update golang.org/x/sys to v0.50.0Talvez já em andamento @wrenix assumiu hoje. Abertafr needs-triage
Dificuldade 2/5 Menos de uma hora Facilidade para iniciantes 62/100
Mantenedores costumam responder em até 1 dia
-
[Docs] Four internal links return 404 (Models concept, Contributing to Docs, Providers reference)Talvez já em andamento Um pull request vinculado a esta issue está aberto ou já foi mesclado. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
meshery/meshery#23520 · 1 comentário ·
Mantenedores costumam responder em até 1 dia