Skip to content

fix(deps): resolve CVE-2026-3449 by eliminating @tootallnate/once via http-proxy-agent@7#1004

Merged
sarayev merged 1 commit intomainfrom
fix/dependabot-tootallnate-once
Mar 9, 2026
Merged

fix(deps): resolve CVE-2026-3449 by eliminating @tootallnate/once via http-proxy-agent@7#1004
sarayev merged 1 commit intomainfrom
fix/dependabot-tootallnate-once

Conversation

@sarayev
Copy link
Contributor

@sarayev sarayev commented Mar 9, 2026

Summary

Resolves CVE-2026-3449 (Incorrect Control Flow Scoping) in @tootallnate/once by eliminating the vulnerable dependency entirely.

Changes

  • Added yarn resolution: "http-proxy-agent": "^7.0.0"
  • This forces all consumers to http-proxy-agent v7, which does not depend on @tootallnate/once at all
  • Result: @tootallnate/once is completely removed from the dependency tree (0 occurrences in yarn.lock)

Strategy

@tootallnate/once < 3.0.1 is vulnerable, but v3.0.1 is ESM-only (breaks CJS consumers with ERR_REQUIRE_ESM). Instead of pinning the vulnerable package, we resolved its parent http-proxy-agent to v7 which dropped the dependency entirely.

Traced via yarn why:

  • codecov@3teeny-requesthttp-proxy-agent@4@tootallnate/once@1
  • jest@27jsdomhttp-proxy-agent@4@tootallnate/once@1
  • lerna@5make-fetch-happenhttp-proxy-agent@5@tootallnate/once@2

All now resolve to http-proxy-agent@7.0.0 (no @tootallnate/once dependency).

Verification

  • yarn why @tootallnate/once → "We couldn't find a match!" ✅
  • grep @tootallnate/once yarn.lock → 0 occurrences ✅
  • lerna run build
  • lerna run test
  • yarn extract-dependency-licenses

…lnate/once (CVE-2026-3449)

Instead of pinning @tootallnate/once to a vulnerable v2.0.0, resolve
http-proxy-agent to v7 which dropped the @tootallnate/once dependency
entirely. This forces all consumers (codecov/teeny-request, jest/jsdom,
lerna/make-fetch-happen) to use http-proxy-agent@7.0.0 which only
depends on agent-base@7 and debug@4.

This completely removes @tootallnate/once from the dependency tree,
fully resolving CVE-2026-3449 without the ESM/CJS compatibility issues
of @tootallnate/once@3.0.1.
@sarayev sarayev marked this pull request as ready for review March 9, 2026 11:44
@sarayev sarayev requested review from a team as code owners March 9, 2026 11:44
@sarayev sarayev merged commit 4fa375e into main Mar 9, 2026
5 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