Skip to content

fix(deps): bump transitive ws to 8.20.1 (GHSA-58qx-3vcg-4xpx)#59

Merged
jamesarich merged 1 commit into
mainfrom
claude/blissful-tereshkova-12cb3e
Jun 13, 2026
Merged

fix(deps): bump transitive ws to 8.20.1 (GHSA-58qx-3vcg-4xpx)#59
jamesarich merged 1 commit into
mainfrom
claude/blissful-tereshkova-12cb3e

Conversation

@jamesarich

Copy link
Copy Markdown
Collaborator

What

Pins the transitive npm ws dependency to 8.20.1 and regenerates the wasm Yarn lockfile.

Why

Dependabot alert #1 flags GHSA-58qx-3vcg-4xpxws: uninitialized memory disclosure (medium). The vulnerable range is >= 8.0.0, < 8.20.1; the first patched version is 8.20.1.

ws is pulled in transitively by the wasmJs target's JS dev/test toolchain (webpack-dev-server / karma) and locked in the Kotlin-managed lockfile kotlin-js-store/wasm/yarn.lock, which previously resolved ws@8.18.3. There is no direct package.json to edit — Kotlin generates the dependency graph.

Changes

  • build.gradle.kts — add a Yarn resolution("ws", "8.20.1") on the Wasm Yarn root extension. Kotlin 2.3.21 splits the Yarn plugin per web target, and the wasmJs target uses its own store (kotlin-js-store/wasm/yarn.lock), so the override targets WasmYarnPlugin / WasmYarnRootExtension — not the JS YarnPlugin.
  • kotlin-js-store/wasm/yarn.lock — regenerated via ./gradlew kotlinWasmUpgradeYarnLock; ws now resolves to 8.20.1.

No new direct dependencies — purely a transitive lockfile/resolution pin.

Verification

  • ./gradlew kotlinWasmUpgradeYarnLock → lockfile resolves ws@8.20.1
  • ./gradlew wasmJsTest → ✅ (browser toolchain that uses ws still passes)
  • ./gradlew spotlessCheck detekt → ✅

Resolves Dependabot alert #1 (GHSA-58qx-3vcg-4xpx) — auto-closes once the default branch no longer resolves the vulnerable range.

🤖 Generated with Claude Code

The wasmJs target's JS dev/test toolchain (webpack-dev-server / karma)
pulls in the npm `ws` package transitively. Kotlin resolved it to 8.18.3,
which is vulnerable to uninitialized-memory disclosure
(GHSA-58qx-3vcg-4xpx, medium; affects >= 8.0.0, < 8.20.1).

Pin `ws` to 8.20.1 via a Yarn resolution on the Wasm Yarn root extension
(the wasmJs target uses its own store, kotlin-js-store/wasm/yarn.lock,
so the override targets WasmYarnPlugin, not the JS YarnPlugin) and
regenerate the lockfile with `kotlinWasmUpgradeYarnLock`.

No new direct dependencies — purely a transitive lockfile/resolution pin.
Verified with `./gradlew wasmJsTest` (browser toolchain still passes).

Resolves Dependabot alert #1 (GHSA-58qx-3vcg-4xpx).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@jamesarich jamesarich enabled auto-merge June 13, 2026 17:59
@jamesarich jamesarich disabled auto-merge June 13, 2026 18:47
@jamesarich jamesarich merged commit d5b13b2 into main Jun 13, 2026
11 checks passed
@jamesarich jamesarich deleted the claude/blissful-tereshkova-12cb3e branch June 13, 2026 18:47
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