Skip to content

security: consolidated medium-severity remediation#3

Merged
lua-stefan-kruger merged 1 commit into
mainfrom
security/medium-severity-remediation
Jul 25, 2026
Merged

security: consolidated medium-severity remediation#3
lua-stefan-kruger merged 1 commit into
mainfrom
security/medium-severity-remediation

Conversation

@lua-stefan-kruger

@lua-stefan-kruger lua-stefan-kruger commented Jul 25, 2026

Copy link
Copy Markdown
Contributor

Summary

Closes out all three open MEDIUM Dependabot alerts in this repo — all js-yaml,
advisory GHSA-h67p-54hq-rp68 (quadratic-complexity DoS in merge-key handling via
repeated aliases). All are dev-scoped, transitive dependencies.

Fixed via scoped npm overrides that pin each js-yaml line to the patched version
within its existing major (no forced major-version bumps):

Alert Location Consumer Range Was Now
#8 root eslint / @eslint/eslintrc ^4.1.0 4.1.1 4.2.0
#7 root @istanbuljs/load-nyc-config ^3.13.1 3.14.2 3.15.0
#6 mcp/lua-platform @istanbuljs/load-nyc-config ^3.13.1 3.14.2 3.15.0

Scoped overrides keep the 3.x and 4.x lines on their own majors — the 3.x coverage
tooling is unaffected by the 4.x API.

Verification (local)

  • root: npm ci, npm run lint, npm test -- --coverage (248 tests), check-coverage.mjs — all pass
  • mcp: npm ci, npm test (83 tests), npm run build, check-bundle-size.mjs — all pass
  • Lockfile diffs are strictly js-yaml version/integrity/funding metadata; no other churn

Only dependency manifests + lockfiles changed. CI is expected to be green.


Note

Low Risk
Manifest and lockfile-only changes for dev-scoped transitive dependencies; no runtime or application code paths change.

Overview
Addresses GHSA-h67p-54hq-rp68 (DoS in js-yaml merge-key handling) by pinning transitive dev js-yaml installs through scoped npm overrides, without crossing major versions.

The root package.json now forces js-yaml@^4.1.04.2.0 (eslint / @eslint/eslintrc) and js-yaml@^3.13.13.15.0 (@istanbuljs/load-nyc-config). mcp/lua-platform adds the same 3.15.0 override for its Jest/coverage 3.x tree. Lockfiles only reflect the bumped js-yaml versions and metadata.

Reviewed by Cursor Bugbot for commit 8313e91. Bugbot is set up for automated code reviews on this repo. Configure here.

Force-override js-yaml to patched within-major versions to close out
the three open MEDIUM Dependabot alerts (GHSA-h67p-54hq-rp68,
quadratic-complexity DoS in merge-key handling):

- root: js-yaml ^4.1.0 (eslint/@eslint/eslintrc) 4.1.1 -> 4.2.0 (alert #8)
- root: js-yaml ^3.13.1 (@istanbuljs/load-nyc-config) 3.14.2 -> 3.15.0 (alert #7)
- mcp:  js-yaml ^3.13.1 (@istanbuljs/load-nyc-config) 3.14.2 -> 3.15.0 (alert #6)

All dev-scoped transitive; scoped overrides keep the 3.x and 4.x lines
on their own majors (no forced major bump). Lockfiles regenerated;
lint, tests, coverage, MCP build and bundle-size gate all pass locally.

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 8313e91. Configure here.

Comment thread package.json
"overrides": {
"@babel/core": "^7.29.6"
"@babel/core": "^7.29.6",
"js-yaml@^4.1.0": "4.2.0",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Incomplete js-yaml security pin

Medium Severity

The new js-yaml@^4.1.0 override pins 4.2.0, which fixes GHSA-h67p-54hq-rp68 but remains in the affected range for high-severity GHSA-52cp-r559-cp3m (fixed in 4.3.0). The exact pin also blocks npm from resolving the patched 4.3.0 release that has been available since late June.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 8313e91. Configure here.

@lua-stefan-kruger
lua-stefan-kruger merged commit 98b9015 into main Jul 25, 2026
8 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.

1 participant