Skip to content

build(deps): bump vite, ws, js-yaml, esbuild, @babel/core in /frontend - #734

Merged
undera merged 2 commits into
mainfrom
deps/transitive-security
Aug 8, 2026
Merged

build(deps): bump vite, ws, js-yaml, esbuild, @babel/core in /frontend#734
undera merged 2 commits into
mainfrom
deps/transitive-security

Conversation

@undera

@undera undera commented Aug 8, 2026

Copy link
Copy Markdown
Collaborator

Closes six open Dependabot advisories that had no automated PR. All but vite are transitive, so Dependabot could not express them as direct version bumps.

Package Before After Advisories closed
vite 7.3.1 7.3.6 3 high — arbitrary file read via dev-server WebSocket; server.fs.deny bypass with queries; server.fs.deny bypass on Windows alternate paths
ws 8.19.0 8.21.3 1 high — memory-exhaustion DoS from tiny fragments/data chunks
js-yaml 4.1.1 4.3.0 1 high — quadratic CPU consumption via YAML merge-key chains
esbuild 0.27.3 0.28.1 1 low — arbitrary file read from dev server on Windows
@babel/core 7.29.0 7.29.7 1 low — arbitrary file read via sourceMappingURL

Why storybook moves too

storybook@10.2.10 caps esbuild at ^0.27.0, which put the fixed esbuild@0.28.1 out of reach. storybook@10.5.7 widened that to include ^0.28.0, and it satisfies the already-declared ^10.2.10, so no package.json change was needed for it. This is the bulk of the lockfile diff.

package.json changes by exactly one line — vite from ^7.3.1 to ^7.3.5.

Verification

npm ci, npm run build and npx tsc --noEmit all pass locally on this lockfile.

Scope

frontend/yarn.lock is deliberately untouched — npm rewrites it as a side effect of any install, and release.yaml already discards those changes via git checkout frontend/yarn.lock.

Remaining known-vulnerable dependency after this lands: oras.land/oras-go/v2 2.6.0 (2 high), on the Go side.

🤖 Generated with Claude Code

undera and others added 2 commits August 8, 2026 08:40
Closes six Dependabot advisories that had no automated PR because all but
vite are transitive and not expressible as direct bumps:

  vite         7.3.1  -> 7.3.6   3 high
  ws           8.19.0 -> 8.21.3  1 high
  js-yaml      4.1.1  -> 4.3.0   1 high
  esbuild      0.27.3 -> 0.28.1  1 low
  @babel/core  7.29.0 -> 7.29.7  1 low

storybook moves 10.2.10 -> 10.5.7 as a prerequisite: 10.2.10 caps esbuild
at ^0.27.0, so 0.28.1 was unreachable until storybook widened the range.
That is within the declared ^10.2.10, so only the vite range changed in
package.json.

Verified with npm ci, vite build and tsc --noEmit.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
storybook 10.5.7 types action() as returning any, so the concise arrow
bodies tripped @typescript-eslint/no-unsafe-return. Wrapping the calls in
block bodies discards the return value and restores the void contract the
onSelect/onClick props expect.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@undera
undera marked this pull request as ready for review August 8, 2026 11:34
@undera
undera merged commit 2c4cb26 into main Aug 8, 2026
4 checks passed
@undera
undera deleted the deps/transitive-security branch August 8, 2026 11:34
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