feat(updatecli/updatecli): GitHub artifact attestations config#51053
Conversation
📝 WalkthroughWalkthroughThis PR adds version-constrained package registry entries for Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Suggested labels
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@pkgs/updatecli/updatecli/registry.yaml`:
- Around line 139-140: The github_artifact_attestations signer_workflow value is
intentionally a regex with escaped dots; leave the github_artifact_attestations
-> signer_workflow entry (the string
updatecli/updatecli/\.github/workflows/release\.yaml) unchanged so the pattern
matches literal dots rather than any-character wildcards.
In `@registry.yaml`:
- Around line 89553-89576: The registry entry for updatecli incorrectly adds a
github_artifact_attestations verification block (associated with the asset
"updatecli_{{.OS}}_{{.Arch}}.{{.Format}}" and version_constraint semver("<=
0.114.0")), but updatecli does not produce GitHub artifact attestations; remove
the entire github_artifact_attestations block from this updatecli configuration
(or replace it with a comment and escalate to the updatecli team to confirm
attestation support) so registry lookups no longer attempt to verify
non‑existent attestations.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 73208003-ca45-4d14-a669-7f8df216105d
📒 Files selected for processing (3)
pkgs/updatecli/updatecli/pkg.yamlpkgs/updatecli/updatecli/registry.yamlregistry.yaml
| github_artifact_attestations: | ||
| signer_workflow: updatecli/updatecli/\.github/workflows/release\.yaml |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Verify artifact attestations are available for updatecli/updatecli
gh attestation verify --help >/dev/null 2>&1 || { echo "gh attestation not available"; exit 0; }
# Check if attestations page exists (referenced in PR description)
curl -sI "https://github.com/updatecli/updatecli/attestations" | head -1Repository: aquaproj/aqua-registry
Length of output: 77
🏁 Script executed:
# Check if tfcmt registry.yaml exists and examine line 103 area
fd -t f "tfcmt" -p "registry.yaml" | head -5Repository: aquaproj/aqua-registry
Length of output: 166
🏁 Script executed:
# Verify updatecli registry.yaml content at lines 139-140
fd -t f "updatecli" -p "registry.yaml" -x cat -n {} | sed -n '135,145p'Repository: aquaproj/aqua-registry
Length of output: 166
🏁 Script executed:
# Find updatecli registry.yaml and check lines 139-140
find . -name registry.yaml | grep updatecli | head -1Repository: aquaproj/aqua-registry
Length of output: 106
🏁 Script executed:
# Find tfcmt registry.yaml and check around line 103
find . -name registry.yaml | grep tfcmt | head -1Repository: aquaproj/aqua-registry
Length of output: 109
🏁 Script executed:
# Find suzuki-shunsuke/tfcmt registry.yaml
find . -path "*suzuki-shunsuke*tfcmt*registry.yaml" | head -1Repository: aquaproj/aqua-registry
Length of output: 108
🏁 Script executed:
# Verify updatecli registry.yaml content at lines 139-140
cat -n ./pkgs/updatecli/updatecli/registry.yaml | sed -n '135,145p'Repository: aquaproj/aqua-registry
Length of output: 354
🏁 Script executed:
# Verify tfcmt registry.yaml content at lines 100-110 to see the pattern referenced
cat -n ./pkgs/suzuki-shunsuke/tfcmt/registry.yaml | sed -n '100,110p'Repository: aquaproj/aqua-registry
Length of output: 48
🏁 Script executed:
# Check total lines in tfcmt registry.yaml
wc -l ./pkgs/suzuki-shunsuke/tfcmt/registry.yamlRepository: aquaproj/aqua-registry
Length of output: 111
🏁 Script executed:
# Search for github_artifact_attestations pattern in tfcmt registry.yaml
grep -n "github_artifact_attestations" ./pkgs/suzuki-shunsuke/tfcmt/registry.yamlRepository: aquaproj/aqua-registry
Length of output: 106
🏁 Script executed:
# Check the github_artifact_attestations section in tfcmt (lines 88-89)
cat -n ./pkgs/suzuki-shunsuke/tfcmt/registry.yaml | sed -n '88,89p'Repository: aquaproj/aqua-registry
Length of output: 211
GitHub artifact attestations configuration is correct.
The signer_workflow pattern with backslash-escaped dots (\.) is intentional and correct—aqua treats this field as a regular expression, so escaping the dots ensures precise literal matching rather than "any character" matching.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@pkgs/updatecli/updatecli/registry.yaml` around lines 139 - 140, The
github_artifact_attestations signer_workflow value is intentionally a regex with
escaped dots; leave the github_artifact_attestations -> signer_workflow entry
(the string updatecli/updatecli/\.github/workflows/release\.yaml) unchanged so
the pattern matches literal dots rather than any-character wildcards.
| - version_constraint: semver("<= 0.114.0") | ||
| asset: updatecli_{{.OS}}_{{.Arch}}.{{.Format}} | ||
| format: tar.gz | ||
| replacements: | ||
| amd64: x86_64 | ||
| darwin: Darwin | ||
| linux: Linux | ||
| windows: Windows | ||
| checksum: | ||
| type: github_release | ||
| asset: checksums.txt | ||
| algorithm: sha256 | ||
| cosign: | ||
| bundle: | ||
| type: github_release | ||
| asset: checksums.txt.sig | ||
| opts: | ||
| - --certificate-identity | ||
| - "https://github.com/updatecli/updatecli/.github/workflows/release.yaml@refs/tags/{{.Version}}" | ||
| - --certificate-oidc-issuer | ||
| - https://token.actions.githubusercontent.com | ||
| overrides: | ||
| - goos: windows | ||
| format: zip |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Check the updatecli attestations page referenced in PR description
# and verify which versions have attestations available
# Check recent releases to understand attestation availability
gh api repos/updatecli/updatecli/releases --jq '.[0:5] | .[] | {tag_name, published_at}'
# Check if attestations exist for v0.114.0 and a newer version
echo "---"
echo "Checking attestations for v0.114.0:"
gh attestation verify --owner updatecli --repo updatecli --format json 2>&1 | head -20 || echo "No attestation check available via CLI"Repository: aquaproj/aqua-registry
Length of output: 2111
🏁 Script executed:
# First, let's check the registry.yaml file around the specified lines
sed -n '89553,89576p' registry.yaml | cat -n
echo "---"
# Also check the second hunk mentioned (around 89601-89602)
sed -n '89595,89610p' registry.yaml | cat -nRepository: aquaproj/aqua-registry
Length of output: 1847
🌐 Web query:
updatecli GitHub artifact attestations support release history
💡 Result:
Updatecli does not support GitHub artifact attestations. No mentions of artifact attestations, SLSA provenance, Sigstore, or related terms like "attest-build-provenance" appear in Updatecli's release notes (6,7,11,14), changelogs, documentation (50,51,52,54,62), GitHub repository (13), workflows, or searches across its ecosystem. Updatecli focuses on declarative dependency updates via pipelines with sources, conditions, targets, and actions like GitHub pull requests (54), but lacks integration with GitHub's artifact attestation features introduced in 2024 (1,4,58,64). Other tools like GoReleaser (5), GitHub CLI (1,2,3), and Trivy (61) explicitly added support, but Updatecli has no equivalent in releases up to v0.114.0 (2026-02-24,13) or workflows.
Citations:
- 1: Update GitHub CLI release process to generate artifact attestations cli/cli#9041
- 2: Support artifact verification using attestations stored in the image registry in
gh attestation verifycommand cli/cli#9369 - 3: https://cli.github.com/manual/gh_attestation_verify
- 4: https://docs.github.com/actions/security-for-github-actions/using-artifact-attestations
- 5: Support Github Artifact Attestations goreleaser/goreleaser#4852
- 6: https://github.com/updatecli/updatecli/releases
- 7: https://newreleases.io/project/github/updatecli/updatecli/release/v0.113.0
- 8: https://www.updatecli.io/blog/updatecli-v0.110.0-released-github-search-scm-git-branch-cleanup-dockerfile-matching-and-more/
- 9: https://www.updatecli.io/changelogs/updatecli/changelogs/v0.92.0/
- 10: https://github.com/updatecli/updatecli
- 11: https://www.updatecli.io/changelogs/updatecli/changelogs/v0.81.0/
- 12: https://www.updatecli.io/docs/plugins/scm/githubsearch/
- 13: https://www.updatecli.io/docs/plugins/scm/github/
- 14: https://www.updatecli.io/docs/core/configuration/
- 15: https://www.updatecli.io/docs/core/action/
- 16: https://docs.github.com/en/actions/how-tos/security-for-github-actions/using-artifact-attestations/using-artifact-attestations-to-establish-provenance-for-builds
- 17: feat(ci): add build provenance attestations to release workflow aquasecurity/trivy#10343
- 18: https://www.updatecli.io/docs/automate/github_action/
- 19: https://github.com/updatecli/updatecli-action/releases
- 20: https://docs.github.com/actions/security-guides/using-artifact-attestations-to-establish-provenance-for-builds
Remove github_artifact_attestations from updatecli configuration—updatecli does not produce artifact attestations.
The registry change adds github_artifact_attestations verification for updatecli based on the assumption that attestations are available for versions > 0.114.0. However, updatecli does not support GitHub artifact attestations at any version. Searching updatecli's releases, changelogs, documentation, and GitHub workflows shows no artifact attestation support, SLSA provenance, or Sigstore integration. The configuration attempting to verify non-existent attestations will cause registry lookups to fail.
Remove the github_artifact_attestations block or verify with the updatecli team that artifact attestation support has been added to their release workflow.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@registry.yaml` around lines 89553 - 89576, The registry entry for updatecli
incorrectly adds a github_artifact_attestations verification block (associated
with the asset "updatecli_{{.OS}}_{{.Arch}}.{{.Format}}" and version_constraint
semver("<= 0.114.0")), but updatecli does not produce GitHub artifact
attestations; remove the entire github_artifact_attestations block from this
updatecli configuration (or replace it with a comment and escalate to the
updatecli team to confirm attestation support) so registry lookups no longer
attempt to verify non‑existent attestations.
|
Thank you! |
This MR contains the following updates: | Package | Update | Change | |---|---|---| | [aquaproj/aqua-registry](https://github.com/aquaproj/aqua-registry) | minor | `v4.487.0` → `v4.491.0` | MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot). **Proposed changes to behavior should be submitted there as MRs.** --- ### Release Notes <details> <summary>aquaproj/aqua-registry (aquaproj/aqua-registry)</summary> ### [`v4.491.0`](https://github.com/aquaproj/aqua-registry/releases/tag/v4.491.0) [Compare Source](aquaproj/aqua-registry@v4.490.0...v4.491.0) [Issues](https://github.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.491.0) | [Merge Requests](https://github.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.491.0) | <aquaproj/aqua-registry@v4.490.0...v4.491.0> #### 🎉 New Packages [#​51349](aquaproj/aqua-registry#51349) [azu/dockerfile-pin](https://github.com/azu/dockerfile-pin) - A CLI tool that adds `@sha256:<digest>` to FROM lines in Dockerfiles and image fields in docker-compose.yml to prevent supply chain attacks [@​azu](https://github.com/azu) #### Fixes [#​51341](aquaproj/aqua-registry#51341) Enable windows support for latest Zellij [@​attakei](https://github.com/attakei) [#​51352](aquaproj/aqua-registry#51352) goreleaser/goreleaser: Disable cosign verification at v2.15.0 and v2.15.1 [#​51351](aquaproj/aqua-registry#51351) anthropics/claude-code: Exclude v2.1.88 as it's unavailable [#​51350](aquaproj/aqua-registry#51350) Re-scaffold dandavison/delta ### [`v4.490.0`](https://github.com/aquaproj/aqua-registry/releases/tag/v4.490.0) [Compare Source](aquaproj/aqua-registry@v4.489.0...v4.490.0) [Issues](https://github.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.490.0) | [Merge Requests](https://github.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.490.0) | <aquaproj/aqua-registry@v4.489.0...v4.490.0> #### 🎉 New Packages [#​51332](aquaproj/aqua-registry#51332) [getdbt.com/dbt-fusion](https://docs.getdbt.com/docs/local/install-dbt) The next-generation engine for dbt [@​ryan-pip](https://github.com/ryan-pip) > \[!NOTE] > To update this package using Renovate, please update aqua-renovate-config to 2.12.0 or later. > <https://github.com/aquaproj/aqua-renovate-config/releases/tag/2.12.0> #### Fixes [#​51331](aquaproj/aqua-registry#51331) steveyegge/beads: Rename gastownhall/beads [#​51272](aquaproj/aqua-registry#51272) Azure/azure-dev: Re-scaffold [@​Petermarcu](https://github.com/Petermarcu) [#​51222](aquaproj/aqua-registry#51222) shinagawa-web/gomarklint: no assets for 2.1.0 [@​scop](https://github.com/scop) [#​51046](aquaproj/aqua-registry#51046) Re-scaffold magefile/mage [@​frozenbonito](https://github.com/frozenbonito) #### Security [#​51254](aquaproj/aqua-registry#51254) lxc/incus: GitHub artifact attestations config [@​scop](https://github.com/scop) ### [`v4.489.0`](https://github.com/aquaproj/aqua-registry/releases/tag/v4.489.0) [Compare Source](aquaproj/aqua-registry@v4.488.0...v4.489.0) [Issues](https://github.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.489.0) | [Merge Requests](https://github.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.489.0) | <aquaproj/aqua-registry@v4.488.0...v4.489.0> #### 🎉 New Packages [emacs-eask/cli](https://github.com/emacs-eask/cli) - CLI for building, running, testing, and managing your Emacs Lisp dependencies [@​djgoku](https://github.com/djgoku) #### Fixes [#​50956](aquaproj/aqua-registry#50956) dimo414/bkt: Split darwin arm64 support at 0.8.1 [@​mtibben](https://github.com/mtibben) [#​51180](aquaproj/aqua-registry#51180) zerocore-ai/microsandbox: Rename to superradcompany/microsandbox ### [`v4.488.0`](https://github.com/aquaproj/aqua-registry/releases/tag/v4.488.0) [Compare Source](aquaproj/aqua-registry@v4.487.0...v4.488.0) [Issues](https://github.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.488.0) | [Merge Requests](https://github.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.488.0) | <aquaproj/aqua-registry@v4.487.0...v4.488.0> #### 🎉 New Packages [#​50878](aquaproj/aqua-registry#50878) [RasKrebs/sonar](https://github.com/RasKrebs/sonar) - CLI tool for inspecting and managing services listening on localhost ports [@​TyceHerrman](https://github.com/TyceHerrman) #### Security [#​50868](aquaproj/aqua-registry#50868) terraprovider/statebridge: GitHub artifact attestations config [@​scop](https://github.com/scop) [#​51053](aquaproj/aqua-registry#51053) updatecli/updatecli: GitHub artifact attestations config [@​scop](https://github.com/scop) #### Fixes [#​50962](aquaproj/aqua-registry#50962) drager/wasm-pack: rename the package to wasm-bindgen/wasm-pack [#​50942](aquaproj/aqua-registry#50942) google/go-jsonnet: support v0.22.0 asset naming change [@​tak848](https://github.com/tak848) [#​50835](aquaproj/aqua-registry#50835) fix various typos [@​Marukome0743](https://github.com/Marukome0743) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this MR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box --- This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMDIuMTAiLCJ1cGRhdGVkSW5WZXIiOiI0My4xMDIuMTAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbIlJlbm92YXRlIEJvdCIsImF1dG9tYXRpb246Ym90LWF1dGhvcmVkIiwiZGVwZW5kZW5jeS10eXBlOjptaW5vciJdfQ==-->
https://github.com/updatecli/updatecli/attestations
Check List
argd scommand when adding new packagesSummary by CodeRabbit