Skip to content

chore: sync with upstream v10.3.0 - #157

Merged
Raj-StepSecurity merged 4 commits into
mainfrom
auto-cherry-pick
Oct 21, 2026
Merged

Raj-StepSecurity merged 4 commits into
mainfrom
auto-cherry-pick

Conversation

@Raj-StepSecurity

Copy link
Copy Markdown
Collaborator

@Raj-StepSecurity

Copy link
Copy Markdown
Collaborator Author

📦 Target Release Version: v10.3.0
📋 Previous Release Version: v10.2.0

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Cherry-Pick Verification Report

📦 Upstream Changes: v10.2.0...v10.3.0

📋 File-by-File Analysis:

.github/workflows/test.yml

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ❌ No
  • Status: 🟡 Partial - ❌ Cherry-pick incomplete (+3 -5) | Missing 3 additions | Missing 3 deletions

README.md

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ❌ No
  • Status: 🟡 Partial - ❌ Cherry-pick incomplete (+23 -0) | Missing 1 additions

__tests__/cache/restore-cache.test.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+44 -3)

__tests__/helpers/setup-inputs.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+2 -0)

__tests__/utils/inputs.test.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+31 -0)

__tests__/utils/python-arch.test.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+152 -0)

action-types.yml

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+2 -0)

action.yml

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+3 -0)

docs/caching.md

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+1 -0)

docs/environment-and-tools.md

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+2 -0)

src/cache/restore-cache.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+4 -1)

src/download/checksum/known-checksums.json

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+144 -0)

src/setup-uv.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+6 -0)

src/utils/inputs.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+7 -0)

src/utils/python-arch.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+75 -0)

📊 Summary:

  • Total files changed upstream: 15
  • Files present in PR: 15/15
  • Files with matching changes: 13/15

⚠️ Overall Status: 🟡 PARTIAL - All files present but some changes missing

@github-actions

Copy link
Copy Markdown
Contributor

PR Review

Action Type

Node-based action (runs: using: node24, entry points dist/setup/index.cjs / dist/save-cache/index.cjs).


✅ Passed Checks

  • License: LICENSE is present with copyright for both StepSecurity and the original author (Kevin Stillhammer).
  • action.yml author: author: "step-security" is set correctly.
  • SECURITY.md: Present at repo root.
  • No FUNDING.yml: Not present.
  • auto_cherry_pick.yml: Present in .github/workflows/.
  • actions_release.yml: Present in .github/workflows/.
  • No renovate.json: Not present.
  • No PULL_REQUEST.md: Not present.
  • No ISSUE_TEMPLATE folder: Not present.
  • No CHANGELOG.md: Not present.
  • No .vscode folder: Not present.
  • README version tags: All usage examples reference step-security/setup-uv@v10 (major version only — no full semver tags).
  • README banner: StepSecurity maintained-action banner is present at the top of README.md, linking to https://docs.stepsecurity.io/actions/stepsecurity-maintained-actions.
  • Subscription check URL: src/utils/subscription.ts calls https://agent.api.stepsecurity.io/v1/github/${GITHUB_REPOSITORY}/actions/maintained-actions-subscription — correct.
  • Subscription upstream value: const upstream = "astral-sh/setup-uv" matches original-owner: "astral-sh" + repo-name: "setup-uv" from auto_cherry_pick.yml.
  • package.json author: "author": "step-security" ✓
  • package.json repository: URL is git+https://github.com/step-security/setup-uv.git — contains step-security ✓
  • dist folder: dist/setup/index.cjs and dist/save-cache/index.cjs are present and updated.
  • build script in package.json: "build" key exists in scripts and package manager is npm — workflow script-input check not required.

❌ Failed Checks

None.


⚠️ Warnings

  • audit_fix.yml not found: The standard template expects .github/workflows/audit_fix.yml, but the repo has .github/workflows/audit_package.yml instead. Because package.json contains a build script and uses npm, the "check for script input in audit_fix.yml" requirement is technically not triggered — but the naming diverges from the expected convention. Consider renaming audit_package.yml → audit_fix.yml to align with the standard template.
  • New config.json file: This PR introduces config.json for the first time (upstream sync metadata, build settings, synced commit SHA). The file is auto-managed and marked "do not edit by hand." No security risk, but it is a new permanent artifact in the repo root that reviewers should be aware of.

🔒 Security Findings

No security issues found.

The new python-arch feature (src/utils/python-arch.ts) uses execFile (not exec), preventing shell injection. The user-supplied pythonArch value is passed as an OS environment variable (UV_PYTHON_ARCH) to the uv subprocess — not interpolated into a shell command string — so there is no injection surface. The probe mechanism (using a known-invalid sentinel value to verify uv supports the variable) is well-constructed.


Summary

PR #157 is a clean upstream sync of astral-sh/setup-uv v10.3.0 that adds python-arch / UV_PYTHON_ARCH support. All mandatory StepSecurity checks pass; the only non-blocking observation is that the audit workflow file uses a non-standard name (audit_package.yml vs audit_fix.yml).

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Cherry-Pick Verification Report

📦 Upstream Changes: v10.2.0...v10.3.0

📋 File-by-File Analysis:

.github/workflows/test.yml

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ❌ No
  • Status: 🟡 Partial - ❌ Cherry-pick incomplete (+3 -5) | Missing 3 additions | Missing 3 deletions

README.md

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ❌ No
  • Status: 🟡 Partial - ❌ Cherry-pick incomplete (+23 -0) | Missing 1 additions

__tests__/cache/restore-cache.test.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+44 -3)

__tests__/helpers/setup-inputs.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+2 -0)

__tests__/utils/inputs.test.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+31 -0)

__tests__/utils/python-arch.test.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+152 -0)

action-types.yml

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+2 -0)

action.yml

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+3 -0)

docs/caching.md

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+1 -0)

docs/environment-and-tools.md

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+2 -0)

src/cache/restore-cache.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+4 -1)

src/download/checksum/known-checksums.json

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+144 -0)

src/setup-uv.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+6 -0)

src/utils/inputs.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+7 -0)

src/utils/python-arch.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+75 -0)

📊 Summary:

  • Total files changed upstream: 15
  • Files present in PR: 15/15
  • Files with matching changes: 13/15

⚠️ Overall Status: 🟡 PARTIAL - All files present but some changes missing

@github-actions

Copy link
Copy Markdown
Contributor

PR Review

Action Type

Node-based — runs on node24 as declared in action.yml.


✅ Passed Checks

  • License: Present with copyright for both original author (Kevin Stillhammer) and StepSecurity.
  • action.yml: Present with author: "step-security".
  • SECURITY.md: Present with correct contact address.
  • FUNDING.yml: Not present — correct.
  • Workflows: .github/workflows/ contains both auto_cherry_pick.yml and actions_release.yml.
  • renovate.json: Not present — correct.
  • PULL_REQUEST.md: Not present — correct.
  • ISSUE_TEMPLATE folder: Not present — correct.
  • CHANGELOG.md: Not present — correct.
  • .vscode folder: Not present — correct.
  • README major version: All examples use step-security/setup-uv@v10 (major version only, no full semver).
  • README banner: StepSecurity Maintained Action banner is present at the top of the README.
  • Subscription check URL: Correctly calls https://agent.api.stepsecurity.io/v1/github/${GITHUB_REPOSITORY}/actions/maintained-actions-subscription.
  • Subscription upstream value: upstream = "astral-sh/setup-uv" matches original-owner: "astral-sh" + repo-name: "setup-uv" from auto_cherry_pick.yml.
  • package.json author: "author": "step-security".
  • package.json repository: Contains step-security/setup-uv.
  • dist folder: Present with setup/, save-cache/, and update-known-checksums/.
  • Build script: package.json contains a "build" entry in scripts; auto_cherry_pick.yml and actions_release.yml both carry a script input defaulting to npm run all.

❌ Failed Checks

None.


⚠️ Warnings

  • Audit workflow filename mismatch: The convention references audit_fix.yml, but the actual file is named audit_package.yml. The file does contain the script input so the functional requirement is met — the naming just differs from the expected convention.
  • "build" script is type-check only: "build": "tsc --noEmit" performs type checking but produces no output artefacts. The real bundling step is under "package". Both are correctly chained in "all", but the naming is misleading for anyone reading package.json in isolation.

🔒 Security Findings

No security issues found.

  • The new src/utils/python-arch.ts uses execFile (not exec), so the uvPath and pythonArch values are never interpreted by a shell — no injection risk.
  • pythonArch from user input is passed only as an environment variable value to the subprocess, not as a command argument.
  • The probe-based version detection (setup-uv-probe) is a safe pattern: it uses an invalid value to confirm uv recognises the variable before accepting a real architecture.
  • NO_COLOR=1 is set in the subprocess env to avoid ANSI codes in parsed stderr, which is good defensive practice.
  • The subscription check correctly skips the API call for public repos and only blocks on HTTP 403 from the StepSecurity API.

Summary

This PR syncs with upstream astral-sh/setup-uv@v10.3.0, adding a python-arch input to set UV_PYTHON_ARCH and including the architecture in the cache key. All StepSecurity-specific requirements are satisfied. The PR is ready to merge.

Comment thread src/utils/python-arch.ts

const selected = await queryPythonArch(uvPath, pythonArch);
if (selected.exitCode !== 0) {
throw new Error(

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.

The probe-based approach is clever — using an intentionally invalid arch value to confirm that UV_PYTHON_ARCH is recognised by this version of uv before committing to a real value. However, the probe string "setup-uv-probe" is checked by string-matching against stderr, which makes this fragile if uv ever changes its error message format. Consider adding a comment explaining the detection strategy so future maintainers understand why this specific string is used.

Comment thread src/utils/python-arch.ts
["--no-config", "cache", "dir"],
{
encoding: "utf8",
env: { ...process.env, NO_COLOR: "1", UV_PYTHON_ARCH: pythonArch },

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.

Spreading the full process.env into the subprocess env is correct here (the uv binary needs PATH etc.), but note this also propagates any sensitive runner env vars (tokens, secrets). This is consistent with the rest of the action's subprocess calls, so it is acceptable — worth flagging for awareness in any future security audit.

@Raj-StepSecurity

Copy link
Copy Markdown
Collaborator Author

Sync verification

Warning

1 item needs review: 1 file to check.

Upstream Versions Files dist/ reproducible config.json
astral-sh/setup-uv v10.2.0 → v10.3.0 · compare 20 ✅ ✅

Review these

✅ 9 files: exactly upstream's version
✅ 4 files: upstream's changes alongside StepSecurity's
✅ 2 files: StepSecurity-specific changes only
👀 1 file: upstream and StepSecurity changed the same lines
✅ 3 files: build output or lockfiles, rebuilt from source
✅ 1 file: checked field by field
✅ config.json checks
Check Result
config.json is valid ✅
upstream.repository ✅
upstream.synced_tag is an upstream release ✅
upstream.synced_commit matches the tag ✅
upstream.synced_tag is the newest release ✅
upstream.archived ✅
onboarding_type ✅
action_type ✅
✅ Build checks
Check Result
dist/ is a reproducible build of the PR ✅
✅ Integrity checks
Check Result
actions are node24 with their entrypoints built ✅
the subscription check is called ✅
our workflows are unchanged ✅
removed upstream files stay removed ✅
files upstream deleted are gone ✅
every lockfile has its package.json ✅
no workflow gains write permissions ✅
the PR description is the upstream compare link ✅

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Cherry-Pick Verification Report

📦 Upstream Changes: v10.2.0...v10.3.0

📋 File-by-File Analysis:

.github/workflows/test.yml

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ❌ No
  • Status: 🟡 Partial - ❌ Cherry-pick incomplete (+3 -5) | Missing 3 additions | Missing 3 deletions

README.md

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ❌ No
  • Status: 🟡 Partial - ❌ Cherry-pick incomplete (+23 -0) | Missing 1 additions

__tests__/cache/restore-cache.test.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+44 -3)

__tests__/helpers/setup-inputs.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+2 -0)

__tests__/utils/inputs.test.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+31 -0)

__tests__/utils/python-arch.test.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+152 -0)

action-types.yml

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+2 -0)

action.yml

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+3 -0)

docs/caching.md

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+1 -0)

docs/environment-and-tools.md

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+2 -0)

src/cache/restore-cache.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+4 -1)

src/download/checksum/known-checksums.json

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+144 -0)

src/setup-uv.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+6 -0)

src/utils/inputs.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+7 -0)

src/utils/python-arch.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+75 -0)

📊 Summary:

  • Total files changed upstream: 15
  • Files present in PR: 15/15
  • Files with matching changes: 13/15

⚠️ Overall Status: 🟡 PARTIAL - All files present but some changes missing

@github-actions

Copy link
Copy Markdown
Contributor

PR Review

Action Type

Node-based action (TypeScript compiled to CommonJS, distributed via dist/ folder).

✅ Passed Checks

  • License: MIT license present with copyright for both original author (Kevin Stillhammer) and StepSecurity.
  • action.yml author: Set to step-security ✓
  • SECURITY.md: Present with reporting contact ✓
  • FUNDING.yml: Not present ✓
  • Workflow files: .github/workflows/ contains both auto_cherry_pick.yml and actions_release.yml ✓
  • renovate.json: Not present ✓
  • PULL_REQUEST.md: Not present ✓
  • ISSUE_TEMPLATE folder: Not present ✓
  • CHANGELOG.md: Not present ✓
  • .vscode folder: Not present ✓
  • README semver tags: All usage examples use only major version (@v10), no full semver tags ✓
  • README banner: StepSecurity maintained action banner is present ✓
  • Subscription check URL: Correctly calls https://agent.api.stepsecurity.io/v1/github/$GITHUB_REPOSITORY/actions/maintained-actions-subscription ✓
  • Subscription upstream variable: upstream = "astral-sh/setup-uv" correctly matches original-owner/repo-name from auto_cherry_pick.yml ✓
  • package.json author: Set to step-security ✓
  • package.json repository: URL contains step-security ✓
  • dist folder: Present ✓
  • Build script: package.json contains a build field and npm is the package manager; auto_cherry_pick.yml and actions_release.yml both accept a script input defaulting to npm run all ✓

❌ Failed Checks

No failed checks.

⚠️ Warnings

  • Misleading build script name: package.json defines "build": "tsc --noEmit" which only performs type-checking, not actual compilation. The actual bundling is done by the "package": "node scripts/build-dist.mjs" script. While the "all" script correctly chains both, someone running npm run build directly would not produce updated dist artifacts — this can cause confusion.
  • Fragile probe error-message matching: src/utils/python-arch.ts detects whether the installed uv supports UV_PYTHON_ARCH by checking that the error output contains a specific substring. If uv changes its error message wording in a future release, this match will silently fall through to the generic "Failed to check" error instead of providing the intended guidance, making debugging harder.

🔒 Security Findings

No security issues found. The new python-arch feature uses Node's execFile (not exec), so arguments are passed as an array and are not subject to shell injection. The architecture value is passed as an environment variable (UV_PYTHON_ARCH), not interpolated into a shell command string. The uvPath is derived from the action's own download directory, not from user-controlled input.

Summary

This PR is a clean upstream sync from astral-sh/setup-uv v10.3.0, adding a new python-arch input to control Python architecture selection via UV_PYTHON_ARCH. All StepSecurity compliance checks pass; the two warnings above are low-severity and do not block merge.

Comment thread src/utils/python-arch.ts
!probe.stderr.includes(
`environment variable \`UV_PYTHON_ARCH\` with invalid value \`${PROBE_ARCH}\``,
)
) {

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.

⚠️ Fragile error-message matching: This substring check ties version detection to the exact wording of uv's error output. If uv ever rewrites or localises this message, the check will fall through to the generic "Failed to check" branch below rather than the intended "does not support UV_PYTHON_ARCH" guidance.

Consider also matching on a broader pattern (e.g. checking exitCode === 2 AND stderr mentions UV_PYTHON_ARCH) so a minor rephrasing doesn't obscure the root cause.

Comment thread package.json
{
"name": "setup-uv",
"name": "@step-security/setup-uv",
"version": "1.0.0",

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.

⚠️ build script only type-checks: "build": "tsc --noEmit" runs the TypeScript compiler in check-only mode — it produces no output files. The actual bundling is done by "package": "node scripts/build-dist.mjs". A developer running npm run build expecting to regenerate dist/ will get no output and no error, which is surprising. Consider renaming this to "typecheck" or "lint:types" and pointing "build" at the real packaging step.

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Cherry-Pick Verification Report

📦 Upstream Changes: v10.2.0...v10.3.0

📋 File-by-File Analysis:

.github/workflows/test.yml

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ❌ No
  • Status: 🟡 Partial - ❌ Cherry-pick incomplete (+3 -5) | Missing 3 additions | Missing 3 deletions

README.md

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ❌ No
  • Status: 🟡 Partial - ❌ Cherry-pick incomplete (+23 -0) | Missing 1 additions

__tests__/cache/restore-cache.test.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+44 -3)

__tests__/helpers/setup-inputs.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+2 -0)

__tests__/utils/inputs.test.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+31 -0)

__tests__/utils/python-arch.test.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+152 -0)

action-types.yml

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+2 -0)

action.yml

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+3 -0)

docs/caching.md

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+1 -0)

docs/environment-and-tools.md

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+2 -0)

src/cache/restore-cache.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+4 -1)

src/download/checksum/known-checksums.json

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+144 -0)

src/setup-uv.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+6 -0)

src/utils/inputs.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+7 -0)

src/utils/python-arch.ts

  • Upstream has changes: ✅ Yes
  • File exists in PR: ✅ Yes
  • Changes match: ✅ Yes
  • Status: 🟢 Perfect - ✅ All changes applied correctly (+75 -0)

📊 Summary:

  • Total files changed upstream: 15
  • Files present in PR: 15/15
  • Files with matching changes: 13/15

⚠️ Overall Status: 🟡 PARTIAL - All files present but some changes missing

@Raj-StepSecurity
Raj-StepSecurity merged commit 92bbd5f into main Oct 21, 2026
97 of 98 checks passed
@Raj-StepSecurity
Raj-StepSecurity deleted the auto-cherry-pick branch October 21, 2026 06:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants