Skip to content

Fix high/critical Dependabot vulnerabilities in client and server - #20

Merged
BowlegsBill merged 1 commit into
mainfrom
fix/dependabot-high-critical-vulns
Jul 24, 2026
Merged

Fix high/critical Dependabot vulnerabilities in client and server#20
BowlegsBill merged 1 commit into
mainfrom
fix/dependabot-high-critical-vulns

Conversation

@BowlegsBill

Copy link
Copy Markdown

Summary

Resolves all 79 open high/critical GitHub Dependabot alerts for this repo, across client/yarn.lock and server/yarn.lock. Almost all were transitive dependencies (axios, tar, minimatch, brace-expansion, js-yaml, form-data, ws, multer, lodash, immutable, vite, postcss, rollup, and others).

Approach

  • server: ran a full yarn upgrade to re-resolve transitive deps to their newest patched versions within each parent's range (safe across multi-major packages), plus a tar resolution (^7.5.19 → 7.5.21) to clear tar@6.2.1 pulled in by native build tooling (sqlite3, bcryptnode-pre-gyp, node-gyp) — the open-ended advisory ranges (<= 7.5.18) still matched 6.x. Native module builds (bcrypt/sqlite3) verified to compile and load with tar 7.
  • client: full upgrade was blocked by a Node-engine constraint (vue-i18n requires Node ≥22), so added a resolutions block pinning each vulnerable package to its patched minimum, each capped within its current major to avoid breaking-change jumps (vite ^6.4.3, minimatch ^9.0.7, js-yaml ^4.3.0, etc.).
  • 3 source fixes: newer axios/jsonwebtoken typings surfaced 3 type errors — env-string expiresIn vs jsonwebtoken's StringValue type (auth.module.ts, auth.service.ts), and axios's stricter header-value union in getAvatar (users.service.ts). Fixed with minimal casts / String() coercion.

Verification

  • ✅ Checked every installed lockfile version against all 79 open alert ranges — no installed version matches any open alert. Alerts should auto-close after Dependabot re-scans.
  • ✅ Server: nest build clean, 538/538 tests pass.
  • ✅ Client: vue-tsc --noEmit + vite build clean.

🤖 Generated with Claude Code

Resolves all 79 open high/critical GitHub Dependabot alerts across
client/yarn.lock and server/yarn.lock (axios, tar, minimatch,
brace-expansion, js-yaml, form-data, ws, multer, lodash, immutable,
vite, postcss, rollup, and others).

- server: full `yarn upgrade` to pull patched transitive versions, plus
  a `tar` resolution (7.5.21) to clear the tar@6.2.1 pulled by native
  build tooling; native modules (bcrypt/sqlite3) verified to build/load.
- client: added a `resolutions` block pinning each vulnerable package to
  its patched minimum, capped within its current major to avoid breaking
  jumps (vite ^6.4.3, minimatch ^9.0.7, js-yaml ^4.3.0, etc.).
- fixed 3 type errors surfaced by newer axios/jsonwebtoken typings
  (expiresIn StringValue, axios header-value union in getAvatar).

Verified: server nest build + 538/538 tests pass; client vue-tsc + vite
build pass; no installed version matches any open alert range.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Lines Statements Branches Functions
Coverage: 86%
86.9% (14923/17171) 78.7% (854/1085) 76.97% (371/482)
Tests Skipped Failures Errors Time
538 0 💤 0 ❌ 0 🔥 59.615s ⏱️

@BowlegsBill
BowlegsBill merged commit 6bd6ba4 into main Jul 24, 2026
3 checks passed
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