Skip to content

deps(npm): Bump vite from 8.0.16 to 8.1.6 in /app - #12225

Merged
MarkusNeusinger merged 1 commit into
mainfrom
dependabot/npm_and_yarn/app/vite-8.1.6
Oct 22, 2026
Merged

MarkusNeusinger merged 1 commit into
mainfrom
dependabot/npm_and_yarn/app/vite-8.1.6

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

Bumps vite from 8.0.16 to 8.1.6.

Release notes

Sourced from vite's releases.

v8.1.6

Please refer to CHANGELOG.md for details.

v8.1.5

Please refer to CHANGELOG.md for details.

v8.1.4

Please refer to CHANGELOG.md for details.

v8.1.3

Please refer to CHANGELOG.md for details.

v8.1.2

Please refer to CHANGELOG.md for details.

v8.1.1

Please refer to CHANGELOG.md for details.

plugin-legacy@8.1.0

Please refer to CHANGELOG.md for details.

v8.1.0

Please refer to CHANGELOG.md for details.

plugin-legacy@8.1.0-beta.0

Please refer to CHANGELOG.md for details.

v8.1.0-beta.0

Please refer to CHANGELOG.md for details.

Changelog

Sourced from vite's changelog.

8.1.6 (2026-10-06)

Bug Fixes

  • deps: update launch-editor to v2.14.2 (#23654) (e46fc9c)
  • html: filename passed to transformIndexHtml should not include queries (#23653) (4ff2522)
  • server: store ids to safeModulePaths rather than URLs (#23656) (170b927)

8.1.5 (2026-07-16)

Bug Fixes

  • bundled-dev: avoid duplicated buildEnd (#22931) (8100320)
  • client: overlay error message format align rolldown (#22869) (5a72b87)
  • deps: update all non-major dependencies (#22921) (fef682d)
  • deps: update rolldown-related dependencies (#22922) (3c345e4)
  • module-runner: don't crash stack-trace source mapping when globalThis.Buffer is absent (#22945) (f8b38e3)
  • optimizer: respect importer module format for dynamic import interop with CJS deps (#22951) (6c08c39)
  • ssr: scope switch-case declarations to the switch, not the function (#22893) (b59a73f)

Documentation

  • build: fix incorrect @default for build.cssMinify (#22948) (c88c236)
  • build: fix incorrect @default for build.lib.formats (#22911) (369ed60)

Tests

  • avoid scanner scanning all files under __tests__ (#22912) (c961cae)

8.1.4 (2026-07-09)

Features

Bug Fixes

  • build: add workaround for building on stackblitz (#22840) (575c32c)
  • build: keep import.meta.url in preload function as-is (#22839) (f1f90ed)
  • deps: update all non-major dependencies (#22865) (d4295a9)
  • deps: update rolldown-related dependencies (#22866) (7cf07e4)
  • html: avoid backtracking in import-only check (#22848) (b5868c0)
  • optimizer: avoid optimizer run for transform request before init (#22852) (72a5e21)
  • ssr: align named export function call stacktrace column with Node (#22829) (173a1b6)
  • strip pure CSS chunk imports when chunkImportMap is enabled (#22841) (648bd04)

Documentation

Miscellaneous Chores

  • deps: update dependency postcss-modules to v9 (#22867) (a9539d6)

... (truncated)

Commits
  • dade886 release: v8.1.6
  • 170b927 fix(server): store ids to safeModulePaths rather than URLs (#23656)
  • e46fc9c fix(deps): update launch-editor to v2.14.2 (#23654)
  • 4ff2522 fix(html): filename passed to transformIndexHtml should not include queries (...
  • 5e7fe12 release: v8.1.5
  • 6c08c39 fix(optimizer): respect importer module format for dynamic import interop wit...
  • 5a72b87 fix(client): overlay error message format align rolldown (#22869)
  • f8b38e3 fix(module-runner): don't crash stack-trace source mapping when globalThis.Bu...
  • 8100320 fix(bundled-dev): avoid duplicated buildEnd (#22931)
  • c88c236 docs(build): fix incorrect @default for build.cssMinify (#22948)
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update JavaScript code labels Oct 21, 2026
@codecov

codecov Bot commented Oct 21, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@MarkusNeusinger

Copy link
Copy Markdown
Owner

@dependabot rebase

Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 8.0.16 to 8.1.6.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v8.1.6/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.1.6/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 8.1.6
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/app/vite-8.1.6 branch from 205c382 to 9810c3b Compare October 22, 2026 17:47
@MarkusNeusinger
MarkusNeusinger enabled auto-merge (squash) October 22, 2026 17:48
@MarkusNeusinger
MarkusNeusinger merged commit 20c1457 into main Oct 22, 2026
13 checks passed
@MarkusNeusinger
MarkusNeusinger deleted the dependabot/npm_and_yarn/app/vite-8.1.6 branch October 22, 2026 17:50
MarkusNeusinger added a commit that referenced this pull request Oct 22, 2026
…12235)

## Summary

- **Production outage:** since #12225 (Vite 8.0.16 → 8.1.6), every page
on anyplot.ai renders blank. Rolldown 1.1.5 places its CJS-interop
runtime helper in the app's `theme` chunk, which imports `mui`, while
`mui` imports the helper back. The chunk cycle leaves the helper
uninitialized: `TypeError: t is not a function` at `assets/mui-*.js:1`.
- Bumps `vite` to 8.3.5 (Rolldown 1.2.15), which emits the helper as a
separate `rolldown-runtime` chunk with no imports, so the cycle is gone.
`manualChunks` and native `codeSplitting.groups` cannot steer the
runtime module (it is never offered to group matchers), so a config-only
fix wasn't possible on 8.1.6.
- Deduplicates `yarn.lock` so vitest's `vite@^6 || ^7 || ^8` range
resolves to the same 8.3.5 instead of keeping 8.1.6.

## Test plan

- [x] Reproduced the crash against prod with headless Chromium (`/`,
`/scatter-basic`, `/gain-curve` all blank with the page error above).
- [x] Reproduced locally with `vite build` on 8.1.6: `mui` → `theme` →
`mui` import cycle in `dist/assets`.
- [x] `vite build` on 8.3.5: `mui` and `vendor` import only
`rolldown-runtime`, no cycle; `vite preview` of `/gain-curve` boots the
app with no page error.
- [x] `tsc --noEmit` passes.
- [x] `vitest run`: 1166/1168 pass; the 2 failures (`fileText.test.ts`,
windows-1252 decoding) fail identically on `main` in this container
(Node 22.22.0, below the `jsdom` engine range), so they are
environmental, not from this change.

## Checklist

- [x] `changelog.d/vite-runtime-chunk-cycle.md` added
- [x] Related documentation updated — not needed, no behavior change
beyond the fix

---
_Generated by [Claude
Code](https://claude.ai/code/session_013gWuDKsb8J8uqXsHdmhHqs)_

Co-authored-by: Claude <noreply@anthropic.com>
MarkusNeusinger added a commit that referenced this pull request Oct 22, 2026
…merges (#12236)

## Summary
- On 2026-10-22 vite 8.1.6 (#12225) passed every PR check and its
deploy, and left every page on anyplot.ai blank for about 45 minutes
(Rolldown chunk cycle, `TypeError: t is not a function` at module load;
fixed by #12235). Nothing in CI or the post-merge routine ran the
bundle.
- New `scripts/site-smoke.mjs`: loads `/`, `/plots` and `/scatter-basic`
in headless Chromium and fails on a status other than 200, an uncaught
page error, or an empty `#root`; checks `api.anyplot.ai/health`. It
never downloads a browser (CHROME_PATH, the cloud container's Chromium,
or the Playwright MCP's).
- **Before the merge:** the `app-image` job of `ci-image.yml` runs it
against the built gate-off container with the runner's Google Chrome,
whenever the container's inputs change (`package.json`, `yarn.lock`,
`vite.config.ts`, ...), which is every frontend dependency bump.
- **After the merge:** a new `CLAUDE.md` rule (owner request,
2026-10-22) with the recipe in `/open-pr` §4 and the Dependabot batch
command: after every merge, once its deploys finish, run the smoke
against production; a FAIL is an incident and stops further merges. The
Dependabot command also merges lock-file PRs one at a time and smokes
after each `app/` bump. The incident narrative is in
`.claude/guardrails.md`.

## Plan
N/A. The owner asked on 2026-10-22, after the outage, for a rule or
skill so a blank site never goes unnoticed again.

## Test plan
- [x] Local app image built like CI
(`VITE_API_URL=https://api.anyplot.ai`), gate-off container on :8081,
`SITE=http://localhost:8081 API=none MIN_TEXT=50 node
scripts/site-smoke.mjs /`: OK (`text=2736`, one CORS console error
reported as a warning)
- [x] Same against an image built from 20c1457 (vite 8.1.6, the broken
state): `FAIL ... text=0 ... pageerror: t is not a function`, exit 1
- [x] Against production: all four checks OK
- [x] `uv run pytest tests/unit/workflows` (766 passed), `uv run ruff
check .`, changelog check
- [ ] This PR's own `Build app image and smoke the origin gate` run
exercises the new step on the runner (ci-image.yml changes trigger the
job)
- No live verification loop exists for `.github/workflows/` beyond this
PR's own run; the CLAUDE.md rule has no twin in
`.github/copilot-instructions.md`, which does not carry the merge
routine.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_01GdMSqLR5ww4ji74EUSmk9M

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update JavaScript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant