Skip to content

chore(deps): bump fast-uri, js-yaml, deepmerge-ts to patched versions (lockfile refresh) - #414

Merged
gaurav-singh-9227 merged 3 commits into
browserstack:mainfrom
SavioBS629:security/dep-overrides-fast-uri-deepmerge
Sep 16, 2026
Merged

gaurav-singh-9227 merged 3 commits into
browserstack:mainfrom
SavioBS629:security/dep-overrides-fast-uri-deepmerge

Conversation

@SavioBS629

@SavioBS629 SavioBS629 commented Sep 11, 2026

Copy link
Copy Markdown
Collaborator

What

Refresh the lockfile so three transitive dependencies resolve to patched versions that clear known high-severity advisories. No package.json overrides — all three are reachable within the existing declared ranges via npm update.

Package Was Now Reached via Advisory
fast-uri 3.1.5 3.1.7 ajv's ^3.0.1 (patch) host-confusion + SSRF (3.0.0–3.1.5)
js-yaml 4.3.1 4.3.2 eslintrc's ^4.1.0 (patch, dev-only) maxTotalMergeKeys CPU exhaustion (4.0.0–4.3.1)
deepmerge-ts 7.1.5 8.0.2 webdriverio → 9.31.7 (within ^9.27.0), whose @wdio/config declares deepmerge-ts ^8 recursive-object stack exhaustion (<8.0.0)

Why lockfile refresh instead of overrides

An override would force deepmerge-ts@8 underneath webdriverio 9.27.2, whose @wdio officially declares ^7 — an unsupported combination and a permanent manual pin. Bumping webdriverio to 9.31.7 (within the range the project already allows) pulls deepmerge-ts@8 through the maintained graph, a supported combination with nothing to maintain.

Testing

npm updatenpm run linttsc --noEmitnpx vitest run: all green (419/419). npm audit confirms the three advisories are cleared.

🤖 Generated with Claude Code

…ions

Pin transitive dependencies to versions that clear known high-severity
advisories via npm `overrides`:

- fast-uri ^3.1.6 (pulled by ajv via @modelcontextprotocol/sdk):
  fixes host-confusion and SSRF advisories affecting 3.0.0–3.1.5.
- js-yaml ^4.3.2 (dev-only, pulled by eslint): fixes the
  maxTotalMergeKeys CPU-exhaustion advisory affecting 4.0.0–4.3.1.
- deepmerge-ts ^8.0.0 (pulled by webdriverio's @wdio/config and
  @wdio/utils): fixes the recursive-object stack-exhaustion advisory
  affecting <8.0.0.

fast-uri and js-yaml are patch bumps. deepmerge-ts is a major bump past
@wdio's declared ^7.0.3 range; lint, typecheck, and the test suite pass
unchanged (deepmerge-ts@8 requires node >=16.9.0, satisfied here).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Sep 11, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited), Workspace UI (inherited)

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: f91bcb8b-734b-41bd-85d7-38c2c3d4b314

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

…ry bumps

Replace the `overrides` block with a plain lockfile refresh. All three
patched versions are reachable within the existing declared ranges, so no
manual pins are needed:

- fast-uri 3.1.7 (satisfies ajv's ^3.0.1) — patch
- js-yaml 4.3.2 (satisfies eslintrc's ^4.1.0, dev-only) — patch
- deepmerge-ts 8.0.2 — via webdriverio 9.31.7 (within the project's
  ^9.27.0), whose @wdio/config officially declares deepmerge-ts ^8

This uses the webdriverio release that officially supports deepmerge-ts 8,
rather than forcing 8 under a webdriverio that declares ^7 via an override.
npm audit confirms all three advisories are cleared; lint, typecheck, and
the test suite pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@SavioBS629 SavioBS629 changed the title chore(deps): override fast-uri, js-yaml, deepmerge-ts to patched versions chore(deps): bump fast-uri, js-yaml, deepmerge-ts to patched versions (lockfile refresh) Sep 16, 2026
…des-fast-uri-deepmerge

# Conflicts:
#	package-lock.json
#	package.json
@gaurav-singh-9227
gaurav-singh-9227 merged commit 16a5698 into browserstack:main Sep 16, 2026
2 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