Skip to content

chore: harden dependency supply chain#14

Merged
mnaimfaizy merged 3 commits into
mainfrom
security/dependency-supply-chain-hardening
Apr 6, 2026
Merged

chore: harden dependency supply chain#14
mnaimfaizy merged 3 commits into
mainfrom
security/dependency-supply-chain-hardening

Conversation

@mnaimfaizy
Copy link
Copy Markdown
Owner

Summary

  • pin direct npm dependencies to exact reviewed versions, declare the repo npm-only, add .npmrc policy defaults, and block the compromised Axios releases 1.14.1 and 0.30.4 via package.json overrides
  • harden CI by pinning third-party actions to full SHAs, adding dependency review and secure install review jobs, and verifying that package-lock.json stays frozen after every npm ci
  • add repository governance and documentation for dependency security with docs/SECURITY, SECURITY.md, CODEOWNERS, Dependabot configuration, and dependency-specific Copilot instructions
  • keep the small source and test fixes needed to return the branch to a clean validated state after the security and dependency changes

Validation

  • npm audit --json reports 0 known vulnerabilities
  • npm run lint
  • npm run test:run
  • npm run build

Notes

  • the current lockfile does not include Axios, but the overrides prevent the compromised releases from being selected if Axios is introduced directly or transitively later
  • the repo intentionally does not enable blanket ignore-scripts=true because the current toolchain still relies on reviewed install-time packages such as esbuild and @tailwindcss/oxide; instead, CI now performs a metadata-only npm ci --ignore-scripts review stage before normal install-and-build jobs

Pin direct npm dependencies to exact reviewed versions and add npm policy defaults.

Harden CI with SHA-pinned actions, dependency review, secure install review, and frozen lockfile verification.

Document the policy in repository instructions and security docs, add governance files, and keep the lint/test warning fixes that were required to return the branch to a clean validated state.
@mnaimfaizy mnaimfaizy self-assigned this Apr 6, 2026
@mnaimfaizy mnaimfaizy merged commit 70d7f67 into main Apr 6, 2026
9 checks passed
@mnaimfaizy mnaimfaizy deleted the security/dependency-supply-chain-hardening branch April 6, 2026 08:57
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