#50512: chore: harden GitHub Actions against script injection patterns
Description of Change
Replaces direct ${{ }} expression interpolation in run: blocks with environment variables across GitHub Actions workflows and composite actions. This follows GitHub's security hardening guidelines to avoid patterns that automated security scanners (e.g. zizmor, CodeQL, OpenSSF Scorecard) flag as script injection risks.
None of these patterns are currently exploitable — they are either protected by GitHub's built-in fork PR protections, constrained input formats (e.g. SHA hashes, numeric IDs, GitHub usernames), or only called with hardcoded values. This PR is purely a best-practices cleanup to eliminate noisy scanner output and prevent future issues if these patterns are copied or modified.
Changes
archaeologist-dig.yml: Moveclone_url,head.sha,base.reffrom${{ }}interpolation toenv:block with quoted shell variablesnon-maintainer-dependency-change.yml: Moveuser.loginfrom inline sed interpolation to$PR_AUTHORenv varissue-unlabeled.yml: MovetoJSON(labels)to$LABELS_JSONenv varissue-labeled.yml: Moveissue.numberto$ISSUE_NUMBERenv varpipeline-electron-lint.yml: Add hex-only format validation forchromium_revisionbefore use in curl URLscipd-install/action.yml: Move all${{ inputs.* }}from inline interpolation toenv:blocks with quoted shell referencesset-chromium-cookie/action.yml: Replace${{ env.CHROMIUM_GIT_COOKIE }}with$CHROMIUM_GIT_COOKIEshell variable references- 5
pull_request_targetworkflows: Add security comments warning against checking out PR head code
Notes: none
Backports
Semver Impact
Semantic Versioning helps users understand the impact of updates:
- Major (X.y.z): Breaking changes that may require code modifications
- Minor (x.Y.z): New features that maintain backward compatibility
- Patch (x.y.Z): Bug fixes that don't change the API
- None: Changes that don't affect using facing parts of Electron