Skip to content

fix: refresh dependency and CI security metadata#3896

Draft
bbingz wants to merge 1 commit into
siteserver:masterfrom
bbingz:security/dependency-hygiene-2026
Draft

fix: refresh dependency and CI security metadata#3896
bbingz wants to merge 1 commit into
siteserver:masterfrom
bbingz:security/dependency-hygiene-2026

Conversation

@bbingz
Copy link
Copy Markdown

@bbingz bbingz commented May 30, 2026

This is a smaller slice split out of the broader security hardening draft PR (#3895). It keeps the scope limited to dependency/security metadata plus the minimal CI/build hygiene needed to validate those updates in the existing Azure pipeline.

Changes:

  • refresh root npm security metadata by adding a lockfile, replacing vulnerable gulp build tooling, and declaring package metadata/license
  • migrate the gulp build script away from removed vulnerable packages and make OSS upload tasks skip safely when PR secrets are unavailable
  • add auditable npm metadata for src/SSCMS.Web
  • update vulnerable/deprecated .NET package references and test packages
  • add a test WebApplicationFactory configuration so the upgraded web integration tests run with an isolated test security key
  • ignore generated ASP.NET data-protection key files
  • remove unstable ApplicationIcon build inputs from CLI/Web projects and skip Docker image push outside master

Validation run locally:

  • /opt/homebrew/opt/dotnet@8/bin/dotnet restore sscms.sln
  • /opt/homebrew/opt/dotnet@8/bin/dotnet list /Users/bing/-Code-/cms-pr-dependency-hygiene/sscms.sln package --vulnerable --include-transitive -> no vulnerable packages
  • /opt/homebrew/opt/dotnet@8/bin/dotnet list /Users/bing/-Code-/cms-pr-dependency-hygiene/sscms.sln package --deprecated -> no deprecated packages
  • npm audit --json at repo root -> 0 vulnerabilities
  • npm audit --json in src/SSCMS.Web -> 0 vulnerabilities
  • npm ci -> passed, 0 vulnerabilities
  • node -e "require(./'gulpfile.js'); console.log('gulpfile ok')" -> passed
  • /opt/homebrew/opt/dotnet@8/bin/dotnet publish src/SSCMS.Cli/SSCMS.Cli.csproj -c Release -o /tmp/sscms-cli-publish-check -> passed
  • /opt/homebrew/opt/dotnet@8/bin/dotnet publish src/SSCMS.Web/SSCMS.Web.csproj -c Release -o /tmp/sscms-web-publish-check -> passed
  • /opt/homebrew/opt/dotnet@8/bin/dotnet test tests/SSCMS.Web.Tests/SSCMS.Web.Tests.csproj -c Release --no-restore -> passed, 2/2 tests; xUnit1051 warnings only

@bbingz bbingz force-pushed the security/dependency-hygiene-2026 branch from 28b90dc to 0681a36 Compare May 30, 2026 23:01
@bbingz bbingz changed the title fix: refresh dependency security metadata fix: refresh dependency and CI security metadata May 30, 2026
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.

1 participant