build(deps): lift the brace-expansion and postcss pins to clear two High advisories#596
Conversation
…igh advisories GHSA-mh99-v99m-4gvg (CVSS 7.5, unbounded-expansion DoS in brace-expansion <= 5.0.7) and GHSA-r28c-9q8g-f849 (CVSS 7.5, path traversal in postcss's sourceMappingURL auto-loading, <= 8.5.17) turned the Supply Chain gate red on every open PR. Both published after main's last green scan at 2026-07-24 15:12 UTC, so branches carrying no dependency change of their own — #594 is three docs pages — went red simultaneously. Both packages were already pinned in `overrides` by #587 and #591, and the vulnerable versions are the pins themselves, so the whole fix is to raise the two values: - brace-expansion 5.0.7 -> 5.0.8, the only fixed 5.x. Keeps the single-pin-across-two-majors arrangement #587 established; a patch bump inside v5 carries none of that decision's original risk. - postcss 8.5.14 -> 8.5.23 rather than the minimum fixed 8.5.18, because the old pin sat *below* what its own dependents declare (@tailwindcss/postcss ^8.5.16, vite ^8.5.15), so this also stops the override forcing a version outside both ranges. Pulls nanoid 3.3.12 -> 3.3.16 with it. Verified beyond a green lockfile, since postcss is a build-time dependency: `bun run build` completes, all 2357 unit tests pass, and lint reports the same five pre-existing warnings. CI's own scanner image (ghcr.io/google/osv-scanner-action:v2.3.8) against the updated lockfile reports `No issues found`, exit 0, with osv-scanner.toml keeping its zero ignored vulnerabilities. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MmRdEWob5E8B5V1eEAo9WG
|
Warning Review limit reached
Next review available in: 36 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (2)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
hermes-exosphere
left a comment
There was a problem hiding this comment.
Verdict: Approved. Clean dependency pin bumps clearing two High advisories. All CI green, OSV-Scanner confirms fix. Full review in comment below.
Code Review — PR #596Verdict: [PASS] Approved Clean dependency pin bump clearing two High-severity advisories. Three files changed, all CI green, OSV-Scanner confirms What changed
What I verified
Notes
Reviewed by Hermes Agent |
Why
The Supply Chain gate (OSV-Scanner) went red on every open PR, including branches that change no dependencies at all — #594 is three docs pages. Two High-severity advisories published after
main's last green scan at 2026-07-24 15:12 UTC:brace-expansion<= 5.0.7sourceMappingURLauto-loading, discloses arbitrary.mapfilespostcss<= 8.5.17Same shape as #587 and #591, but the remedy is narrower than either: both packages were already pinned in
overridesby those PRs, and the vulnerable versions are the pins. Nothing else resolves them, so the entire fix is raising the two values.What changed
brace-expansion5.0.7 → 5.0.8 — the only fixed 5.x. Keeps the single-pin-across-two-majors arrangement Give log-viewer rows a stable unique key, so messages stop stacking on top of each other #587 established (theminimatch@3thateslint-plugin-import,-jsx-a11yand-reactpull still declares^1.1.7). A patch bump inside v5, so it carries none of that decision's original risk.postcss8.5.14 → 8.5.23, not the minimum fixed 8.5.18 — the old pin sat below what its own dependents declare (@tailwindcss/postcsswants^8.5.16,vitewants^8.5.15), so the bump also stops the override silently forcing a version outside both ranges. Pullsnanoid3.3.12 → 3.3.16 with it.osv-scanner.tomlis untouched and keeps its zero ignored vulnerabilities — this is a fix, not an allow-list entry.Verification
postcssis a build-time dependency, so a green lockfile alone isn't enough:bun run build— completes (Next.js + Tailwind +dist/index.js, prune-standalone clean)bun run test:run— 2357 passed / 131 filesbun run lint— clean, same five pre-existing warnings (this is the pathbrace-expansionis exercised on)ghcr.io/google/osv-scanner-action:v2.3.8against the updatedbun.lock:No issues found, exit 0Notes
Merging this unblocks #594 and every other open PR; they'll need a rebase or re-run to pick up the green scan.
🤖 Generated with Claude Code
https://claude.ai/code/session_01MmRdEWob5E8B5V1eEAo9WG