Skip to content

build(deps): bump actions/upload-artifact from 7.0.1 to 7.0.2 - #6343

Merged
ten9876 merged 1 commit into
mainfrom
dependabot/github_actions/actions/upload-artifact-7.0.2
Oct 12, 2026
Merged

ten9876 merged 1 commit into
mainfrom
dependabot/github_actions/actions/upload-artifact-7.0.2

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 10, 2026

Copy link
Copy Markdown
Contributor

Bumps actions/upload-artifact from 7.0.1 to 7.0.2.

Release notes

Sourced from actions/upload-artifact's releases.

v7.0.2

What's Changed

  • Improves artifact download retries when the service returns HTTP 429 (rate limiting), including honoring valid Retry-After headers.
  • Updates @​actions/artifact to v6.3.1.

New Contributors

Full Changelog: actions/upload-artifact@v7.0.1...v7.0.2

Commits
  • cf430e0 Merge pull request #822 from actions/tunc-d-prepare-upload-v7-0-2
  • c2acded chore: prepare v7.0.2 release
  • 4687c1b Merge pull request #821 from actions/tunc-d-upload-artifact-package-bump
  • 8cbe1be Bump @​actions/artifact to 6.3.1
  • See full diff in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 7.0.1 to 7.0.2.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@043fb46...cf430e0)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: 7.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot requested a review from a team as a code owner October 10, 2026 10:45
@dependabot dependabot Bot added the dependencies Pull requests that update a dependency file label Oct 10, 2026
@dependabot
dependabot Bot requested a review from a team as a code owner October 10, 2026 10:45
@dependabot dependabot Bot added the github_actions Pull requests that update GitHub Actions code label Oct 10, 2026

@aethersdr-agent aethersdr-agent Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Issue fit

No linked issue, and none is wanted: this is a Dependabot dependency bump, which CONTRIBUTING.md:153 places in the Infrastructure (Tier 2) tier — "changes to the repo's own scaffolding (dependency bumps, issue templates, CI config, build config)". GOVERNANCE.md's RFC requirement doesn't reach it. Reviewed against the title's own claim instead, and that claim is literally true:

$ git ls-remote --tags https://github.com/actions/upload-artifact 'v7.0.*'
043fb46d1a93c77aae656e7c1c64a875d1fc6a0a	refs/tags/v7.0.1   <- old pin
cf430e030ddbb5b0abf93d22962f4752f3646cd9	refs/tags/v7.0.2   <- new pin

Both SHAs are exactly the tags named in the title. I also read the upstream range rather than assuming what a patch bump contains — v7.0.1..v7.0.2 is two substantive commits, Bump @actions/artifact to 6.3.1 plus release prep. Nothing touches overwrite, if-no-files-found, compression, or path globbing, so there is no default-behavior change for the eleven call sites to absorb.

This also closes the open item the CodeGuard audit flagged for me: it could not confirm the SHA→tag mapping from the checkout alone. Confirmed upstream, above.

Scope

Everything in the diff is explained by the stated change. 11 insertions, 11 deletions, and zero changed lines that are not an upload-artifact pin:

File Changes Claimed by title Verdict
appimage.yml 1 pin (:516) Yes In scope
codeql.yml 2 pins (:141, :187) Yes In scope
docs.yml 1 pin (:130) + # v7.0.1→# v7.0.2 Yes In scope; see nit
full-suite.yml 1 pin (:279) Yes In scope
macos-dmg.yml 1 pin (:770) Yes In scope
sanitizers.yml 1 pin (:334) Yes In scope
windows-installer.yml 4 pins (:493, :526, :535, :812) Yes In scope

Completeness checks: grep -rn 043fb46d... .github/ returns nothing — no straggler left on the old pin. All eleven upload-artifact@ references in the tree carry the new SHA. No mutable action tags anywhere in .github/workflows/. The download-artifact pin (3e5f45b2… = v8.0.1) is untouched and in the same post-v4 artifact-API generation, so the upload/download pairing stays coherent.

Blockers

None.

Nits

  • .github/workflows/docs.yml:130 — the trailing version comment contradicts the repo's own documented convention. .github/dependabot.yml states it directly: "pin actions to a full commit SHA with NO trailing # vX version comment — Dependabot bumps the SHA but doesn't keep such comments in sync, so they drift and mislead (see #3864). The version lives in Dependabot's PR title." This is the only one of the eleven sites carrying such a comment. It is pre-existing (main has # v7.0.1) and Dependabot did keep it in sync this time, so nothing is currently misleading — but since the line is already being touched, it's the cheapest possible moment to bring it into line:

            uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9

    Non-blocking, and equally fine to leave for a separate sweep.

Pre-existing, out of scope for this PR

A security audit was required on the changed files, so I ran it. Its findings are all on lines this PR does not touch — recording them here for visibility, not as anything that should gate a pin bump. Each is verified against the file by me, not just relayed.

  • .github/workflows/macos-dmg.yml:695, 708, 720, 729, 747 — security-audit (CodeGuard), codeguard-0-input-validation-injection.md. Five run: blocks splice github.ref_name into bash as script text, e.g. :720:

              codesign --force --timestamp \
                --sign "Developer ID Application" \
                AetherSDR-${{ github.ref_name }}-macOS-${{ matrix.label }}.dmg
    

    The repo already writes this rule down at windows-installer.yml:21-22 — "A tag name may contain ", ; $ and backticks, so it reaches scripts only as an environment variable, never by ${{ }} substitution into the script text" — and macos-dmg.yml:765 itself implements the sanitization (SAFE_REF="${GITHUB_REF_NAME//[^A-Za-z0-9._-]/_}") just 70 lines below, as does appimage.yml:414. These five sites in the same file missed it, and the job carries the Apple signing/notarization secrets. Reachable only by someone with push/tag-write, so it is a policy inconsistency rather than an unauthenticated vector — but it looks worth its own issue.

  • .github/workflows/docs.yml:66 — CF_TOKEN is job-level, so it is in the environment of npm ci (:92) and npm run build (:95) on pull_request runs, while the only consumers are the main-gated deploy steps (:144-159). The comment at :64-65 explains the reason honestly ("the secrets context is not available in step if: conditions"), so this is a known tradeoff rather than an oversight; narrowing it would mean gating on a vars flag instead.

  • codeql.yml:82, full-suite.yml:45, sanitizers.yml:37, 68 use mutable :latest/:tsan container tags while every uses: in the tree is SHA-pinned. Low severity (org-owned registry, and sanitizers.yml:92-110 asserts image identity at runtime), noted only because the pinning policy is otherwise uniform.

  • appimage.yml:388-390 fetches linuxdeploy from the mutable continuous release tag with no checksum and executes it, where docs.yml:51-55 pins and SHA-256-verifies its Pandoc/Typst toolchain.

Refuted and dropped: CG-PATH-001 at appimage.yml:205 and :417 are both comment prose containing a literal ".../", not path operations. The CS-VLN-CMDI-BACKTICK hits in windows-installer.yml are PowerShell line-continuations. The CS-VLN-CMDI-ENVVAR hits are the mitigation the scanner mistook for the defect. CS-VLN-CMDI-SUBSHELL/PIPE operands are static literals or runner-local tool output. The harness triage line also listed a CS-PII-BANK category with no itemized entry; grepping for IBAN/account/routing/SWIFT/card patterns returns nothing, and the audit identified the matches as 64-hex SHA-256 and 40-hex commit pins — i.e. the digests themselves tripped an account-number rule. No credential material is embedded in any of the seven files; all come from secrets.*.

What I tried to break

  • "7.0.1 to 7.0.2" could have been a wrong or hostile SHA. Verified both pins against upstream tags with git ls-remote (not the API — the sandbox blocks it). Exact match both directions. This is the one check that mattered most and the only one I could settle empirically.
  • A patch bump could still move a default. Read v7.0.1..v7.0.2 upstream rather than trusting the semver label: one dependency bump, one release-prep commit. No input-handling or default change.
  • A bulk SHA replacement usually leaves a straggler. Grepped the whole .github/ tree for the old SHA — none. Also checked for any uses: on a mutable tag (none) and that download-artifact wasn't left on an incompatible generation (it's v8.0.1, untouched, same artifact-API era).
  • Hidden payload in a "mechanical" diff. Counted the changed lines that are not pin lines: zero. No workflow logic, trigger, permissions:, or if: condition moved. Checked permissions: blocks across all seven files — all explicit and scoped, none write-all.
  • The diff I was handed looked corrupted (!cancelled() ${PR_DIFF}${PR_DIFF} (...) in full-suite.yml). Read the real file: it says &&. Harness rendering artifact, not a finding.
  • Could not check: runtime behavior of the new action version. Only docs.yml's upload step actually executed on this PR — all 7 checks are green including "Build docs site", which proves the new pin resolves and runs. The other five workflows will first exercise it elsewhere: appimage/macos-dmg/windows-installer uploads are tag-triggered, and full-suite/sanitizers uploads are failure-conditional, so five of seven workflows first run this pin on a release or a red run, not here. That residual risk is inherent to the bump, not a defect in it. The branch is one commit on top of current main (a9a83e66a), so no stale merge base.

Findings above are reasoned from the workflow sources and from upstream git metadata; nothing was reproduced by executing a workflow.

Recommendation

Approve (with the optional nit). The central claim is verified upstream rather than taken on trust, the diff is exactly the eleven pin lines and nothing else, no straggler or mutable tag remains, and one CI lane has already run the new pin green. The only canon-citable line in the diff is the # v7.0.2 comment in docs.yml:130, which contradicts .github/dependabot.yml's stated convention but is pre-existing and currently accurate — fine either way.

Next step: per CONTRIBUTING.md:106 this is Tier 2, so it needs an @aethersdr/infrastructure owner rather than a general maintainer. The pre-existing macos-dmg.yml github.ref_name interpolation is the one item I'd suggest splitting into its own issue — it is a real deviation from a rule the repo states explicitly and implements correctly two files over, and it should not ride along on a Dependabot PR.


🤖 aethersdr-agent · cost: $9.3557 · model: claude-opus-5

@aethersdr-agent

Copy link
Copy Markdown
Contributor

Cisco CodeGuard — static analysis of this PR (89 finding(s))

  • [MEDIUM] CG-PATH-001 — Potential path traversal in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:205
  • [MEDIUM] CG-PATH-001 — Potential path traversal in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:417
  • [CRITICAL] CS-VLN-CMDI-PIPE — Vulnerability: CS-VLN-CMDI-PIPE in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:77
  • [CRITICAL] CS-VLN-CMDI-PIPE — Vulnerability: CS-VLN-CMDI-PIPE in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:387
  • [CRITICAL] CS-VLN-CMDI-SUBSHELL — Vulnerability: CS-VLN-CMDI-SUBSHELL in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:501
  • [CRITICAL] CS-VLN-CMDI-SUBSHELL — Vulnerability: CS-VLN-CMDI-SUBSHELL in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:503
  • [CRITICAL] CS-VLN-CMDI-BACKTICK — Vulnerability: CS-VLN-CMDI-BACKTICK in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:132
  • [CRITICAL] CS-VLN-CMDI-BACKTICK — Vulnerability: CS-VLN-CMDI-BACKTICK in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:257
  • [CRITICAL] CS-VLN-CMDI-BACKTICK — Vulnerability: CS-VLN-CMDI-BACKTICK in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:304
  • [CRITICAL] CS-VLN-CMDI-BACKTICK — Vulnerability: CS-VLN-CMDI-BACKTICK in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:334
  • [CRITICAL] CS-VLN-CMDI-BACKTICK — Vulnerability: CS-VLN-CMDI-BACKTICK in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:366
  • [CRITICAL] CS-VLN-CMDI-BACKTICK — Vulnerability: CS-VLN-CMDI-BACKTICK in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:451
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:182
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:209
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:215
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:415
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:499
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/appimage.yml /tmp/aetherclaude/pr-6343/.github/workflows/appimage.yml:512
  • [CRITICAL] CS-VLN-CMDI-BACKTICK — Vulnerability: CS-VLN-CMDI-BACKTICK in .github/workflows/codeql.yml /tmp/aetherclaude/pr-6343/.github/workflows/codeql.yml:22
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:101
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:101
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:102
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:106
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:121
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:123
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:197
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:197
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:198
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:202
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:212
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:212
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:224
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:234
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:235
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:235
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:240
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:240
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:247
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:247
  • [MEDIUM] CS-VLN-CMDI-ENVVAR — Vulnerability: CS-VLN-CMDI-ENVVAR in .github/workflows/docs.yml /tmp/aetherclaude/pr-6343/.github/workflows/docs.yml:248

Automated static scan by Cisco DefenseClaw CodeGuard on the changed files. Advisory — some may be false positives; the review above verifies them.


🤖 aethersdr-agent · cost: $10.5234 · model: claude-opus-5

@ten9876 ten9876 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving at c65e3ce.

Verified:

  • The pins match their upstream tags. actions/upload-artifact v7.0.1 = 043fb46d… (old) and v7.0.2 = cf430e03… (new), checked against the actions/upload-artifact tag refs.
  • No straggler. On main (f753dbf), no upload-artifact@ pin other than the eleven this PR bumps remains.
  • The four required contexts pass at this head, and Build docs site ran the new pin green (docs.yml's upload step), so the pin resolves and executes.

Bot review nits:

  • docs.yml:130 # v7.0.2 trailer: left as is by maintainer decision. It is pre-existing and accurate, and leaving it keeps this branch Dependabot-managed with no extra CI cycle.
  • Pre-existing items: the macos-dmg.yml ${{ github.ref_name }} interpolation is already gone on current main (#6083 moved it to SAFE_REF from $GITHUB_REF_NAME, :677/:775), so nothing is left to file. The appimage.yml linuxdeploy continuous download is filed as #6415. The CF_TOKEN scope and the mutable container tags are documented trade-offs (sanitizers.yml asserts image identity at runtime), so nothing was filed for them.

Not verified: the appimage, macos-dmg and windows-installer uploads are tag-triggered, and the full-suite and sanitizers uploads only run on failure. Those sites first run the new pin on a release or a red run.

@ten9876
ten9876 merged commit 8b39af8 into main Oct 12, 2026
7 checks passed
@ten9876
ten9876 deleted the dependabot/github_actions/actions/upload-artifact-7.0.2 branch October 12, 2026 17:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant