Skip to content

[agent] chore(deps): bump flatted to ^3.4.2 via overrides#689

Draft
github-actions[bot] wants to merge 2 commits intomainfrom
security/fix-flatted-prototype-pollution-fb7d3a0da55f01d8
Draft

[agent] chore(deps): bump flatted to ^3.4.2 via overrides#689
github-actions[bot] wants to merge 2 commits intomainfrom
security/fix-flatted-prototype-pollution-fb7d3a0da55f01d8

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

Fixes prototype pollution vulnerability in flatted (GHSA-rf6f-7fwh-wjgh / CVE-2026-33228, severity high, CVSS v4: 8.9).

What

Adds an overrides entry in the root package.json to force flatted >= 3.4.2 across the dependency tree.

Why overrides

The dependency chain is:

eslint@8.57.1 → file-entry-cache@6.0.1 → flat-cache@3.0.4 → flatted@3.2.6 (vulnerable)

flat-cache@3.x (the latest 3.x is 3.2.0) has no release that pins flatted >= 3.4.2. Upgrading to flat-cache@6.x would also require upgrading file-entry-cache to v11 and eslint to a compatible major — a much larger change. Using overrides is the appropriate fallback per the remediation policy when no direct-dependency bump resolves the advisory on a supported range.

Alert

Generated by Dependabot remediation agent · ● 1.1M ·

Add npm overrides to force flatted >= 3.4.2, fixing prototype pollution
vulnerability (GHSA-rf6f-7fwh-wjgh / CVE-2026-33228).

flat-cache@3.x (the direct parent via eslint → file-entry-cache → flat-cache)
has no 3.x release that pins flatted >= 3.4.2, so an overrides entry is used
as the recommended fallback.

Closes Dependabot alert #179.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@nirinchev
Copy link
Copy Markdown
Collaborator

@copilot can you instead upgrade to latest eslint?

- Remove flatted override from root package.json
- Update eslint-config-devtools: replace @typescript-eslint/eslint-plugin+parser with typescript-eslint@8, bump eslint-plugin-mocha to v11, eslint-config-prettier to v10, add globals@16
- Rewrite configs/eslint-config-devtools/index.js to flat config format
- Delete configs/eslint-config-devtools/common.js
- Replace all .eslintrc.js files with eslint.config.js using flat config
- Update devtools-connect package.json: remove semistandard/standard deps, add eslint-config-devtools
- Bump eslint peer/dev dependency to ^9.0.0 across all packages

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Co-authored-by: nirinchev <2315687+nirinchev@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 21, 2026

@copilot can you instead upgrade to latest eslint?

Done in commit 130a0e9. Upgraded ESLint to ^9.0.0 across the entire monorepo and migrated all configs to the ESLint 9 flat config format:

  • Replaced @typescript-eslint/eslint-plugin + @typescript-eslint/parser v5 with typescript-eslint: ^8.0.0 in eslint-config-devtools
  • Upgraded eslint-plugin-mocha to ^11.0.0 and eslint-config-prettier to ^10.0.0
  • Rewrote eslint-config-devtools/index.js as a flat config factory function
  • Converted all 30 .eslintrc.js files to eslint.config.js flat config format
  • Migrated devtools-connect away from eslint-config-semistandard (which doesn't support ESLint 9) to @mongodb-js/eslint-config-devtools
  • Removed the flatted override from root package.json (no longer needed since ESLint 9 pulls in a non-vulnerable flatted through its updated dependency chain)

Copilot AI requested a review from nirinchev April 21, 2026 16:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants