Skip to content

ci+deps: pin actions to SHA, fix OSV scanner, fix Pages asset path, update Angular to v22#16

Merged
skynet2 merged 5 commits into
mainfrom
ci/pin-actions-sha
Jun 3, 2026
Merged

ci+deps: pin actions to SHA, fix OSV scanner, fix Pages asset path, update Angular to v22#16
skynet2 merged 5 commits into
mainfrom
ci/pin-actions-sha

Conversation

@skynet2
Copy link
Copy Markdown
Owner

@skynet2 skynet2 commented Jun 3, 2026

Summary

Hardens CI, fixes two failures/bugs, and updates Angular.

CI hardening

  • Pin every GitHub Action to a full commit SHA (with # vX.Y.Z comments) at the latest release — supply-chain hardening against tag mutation. (checkout v6.0.3, setup-node v6.4.0, configure-pages v6.0.0, upload-pages-artifact v5.0.0, deploy-pages v5.0.0, trivy-action v0.36.0, codeql-action v3.36.1, osv v2.3.8.)
  • Fix OSV-Scanner: its v2 step action is docker-only with a stub root action.yml (caused Top level 'runs:' section is required). Switched to OSV's recommended reusable workflow (osv-scanner-reusable.yml), pinned to SHA, fail-on-vuln: false so it reports to the Security tab without blocking.

Bug fix

  • GitHub Pages asset path: Monaco's loader was requested from /assets/monaco/vs (absolute from root), so on Pages (served under /diff/) it 404'd. Now resolved against document.baseURI, so it works under any deploy path.

Dependencies

  • Angular 21 → 22 via ng update (official migrations: explicit ChangeDetectionStrategy.Eager on the two components that used the implicit default; tsconfig diagnostics opt-out). Requires Node ≥ 22.22.3 (CI's node-version: 22 resolves to it).

Test plan

  • CI green (test + build, Angular 22).
  • Security green (Trivy + CodeQL + OSV via reusable workflow).
  • After merge: Release deploys; https://skynet2.github.io/diff/ loads Monaco from /diff/assets/....

🤖 Generated with Claude Code

Pin every action to a full-length commit SHA (with a version comment) and
bump to the latest release, hardening the supply chain against tag-mutation:

- actions/checkout            v4 -> v6.0.3
- actions/setup-node          v4 -> v6.4.0
- actions/configure-pages     v5 -> v6.0.0
- actions/upload-pages-artifact v3 -> v5.0.0
- actions/deploy-pages        v4 -> v5.0.0
- aquasecurity/trivy-action   0.28.0 -> v0.36.0
- github/codeql-action        v3 -> v3.36.1
- google/osv-scanner-action   v1.9.2 -> v2.3.8

Dependabot (github-actions ecosystem) will keep the SHAs current.
@github-advanced-security
Copy link
Copy Markdown

You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool.

What Enabling Code Scanning Means:

  • The 'Security' tab will display more code scanning analysis results (e.g., for the default branch).
  • Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results.
  • You will be able to see the analysis results for the pull request's branch on this overview once the scans have completed and the checks have passed.

For more information about GitHub Code Scanning, check out the documentation.

skynet2 added 3 commits June 3, 2026 22:57
Runs the official v22 migrations: adds explicit ChangeDetectionStrategy.Eager
to the two components that relied on the implicit default, and the tsconfig
extended-diagnostics opt-out. 91 tests pass; production build clean.
@skynet2 skynet2 changed the title ci: pin GitHub Actions to commit SHAs at latest versions ci+deps: pin actions to SHA, fix OSV scanner, fix Pages asset path, update Angular to v22 Jun 3, 2026
…HIGH/MEDIUM CVEs

Transitive: lodash via @xml-tools/ast (CVE-2026-4800 HIGH),
dompurify via monaco-editor (CVE-2026-0540 / CVE-2026-41238). npm overrides
force the fixed versions; npm audit clean, 91 tests pass, build clean.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants