chore(deps-dev): bump @vitejs/plugin-react from 4.7.0 to 6.1.1 - #77
dependabot[bot] wants to merge 1 commit into
Conversation
Bumps [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) from 4.7.0 to 6.1.1. - [Release notes](https://github.com/vitejs/vite-plugin-react/releases) - [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react@6.1.1/packages/plugin-react) --- updated-dependencies: - dependency-name: "@vitejs/plugin-react" dependency-version: 6.1.1 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
LabelsThe following labels could not be found: Please fix the above issues or remove invalid values from |
srpatcha
left a comment
There was a problem hiding this comment.
Review — eDB#77 "chore(deps-dev): bump @vitejs/plugin-react from 4.7.0 to 6.1.1"
head: 1a40fd1 author: app/dependabot ci: green and wrong — no workflow in this repo runs npm on a pull request, and the lockfile this PR ships does not install
Verdict: Do not merge as-is. npm ci fails on this branch with ERESOLVE: @vitejs/plugin-react@6.1.1 declares a non-optional peer vite@^8.0.0, and package.json keeps vite@^6.3.1. The lockfile Dependabot generated is internally inconsistent — it pins vite@6.4.2 next to a plugin that requires vite 8. Merging this breaks npm ci in nightly.yml, weekly.yml and release.yml, and nothing on this PR would have told you, because no PR-triggered workflow runs npm at all.
Findings
| # | Severity | File:line | Finding | Recommended fix |
|---|---|---|---|---|
| 1 | High | package.json:21 + package-lock.json:1155-1171 |
npm ci fails on this head. @vitejs/plugin-react@6.1.1's peerDependencies includes "vite": "^8.0.0", and it is not listed in peerDependenciesMeta as optional (only @rolldown/plugin-babel, babel-plugin-react-compiler and oxc-transform-react are). package.json still declares "vite": "^6.3.1" and the lock resolves vite@6.4.2 (package-lock.json:2438-2439). Verified: npm ci --dry-run → rc 1, npm error code ERESOLVE … Conflicting peer dependency: vite@8.2.2. Full error in Verification below. |
Do not merge alone. Either close this and let Dependabot regroup it with a vite 6→8 bump in one PR, or bump vite to ^8.0.0 here and regenerate the lock — then run npm ci && npx tsc --noEmit && npm run build && npm run test before merging, because vite 6→8 is two majors and vite.config.ts / vitest.config.ts may not survive it untouched. Merging with --legacy-peer-deps is not a fix; it hides the conflict at install time and moves the failure into the build. |
| 2 | High | .github/workflows/ (all) |
No workflow runs npm on pull_request. npm ci and npm run build appear only in nightly.yml:63,69, weekly.yml:64,70 and release.yml:118,121 — all scheduled or tag-triggered. So every npm dependency change in this repo lands unvalidated and first fails on a nightly run or, worse, during a release. That is why finding #1 reached this point with three green checks. |
Add a frontend job to ci.yml on pull_request: actions/setup-node (node 22.x, cache: npm), then npm ci, npx tsc --noEmit, npm run build, npm run test. package.json:10 already defines "test": "vitest run" and it is currently run by nothing in CI. |
| 3 | Medium | .github/workflows/ci.yml:3-8 at this head |
Even the Python matrix never ran here. This branch forks from 5e436bd (2026-08-25), where ci.yml triggers on pull_request: branches: [main]; this PR targets master, which was added to the trigger later in f3b1ab0. checks.txt shows only Analyze (Python), CodeQL and assign. |
Rebase onto current master. Sequence after eDB#82. |
| 4 | Low | package-lock.json:1-20 |
This PR also silently repairs a pre-existing lockfile drift, so its true blast radius is larger than its title. On origin/master the lock records "version": "0.1.0" and omits vitest, jsdom and @testing-library/* that package.json declares — verified, npm ci on origin/master fails with EUSAGE … Missing: vitest@2.1.9 from lock file and 15 more. Regenerating the lock here fixes that as a side effect. eDB#76 and eDB#79 each carry the same repair, so all three conflict with one another. |
Land the lock regeneration once, on its own, as the prerequisite. Then rebase whichever of #76/#77/#79 survive. Not opening a fix PR for this: #76 and #79 already cover it (review brief, "Opening fix PRs"). |
Dependabot's own comment about the missing npm label is already on this PR and is not repeated here; the config to fix is .github/dependabot.yml.
Architecture conformance
Conforms structurally — dev-dependency metadata confined to Tier 3 eDB (master design §21), no source, import or manifest-entry change, so §5.1 dependency direction is untouched. It fails §28's evidence policy rather than the architectural law: three passing checks are presented as the state of a change that provably does not install.
Proposed changes
Smallest sequence that keeps things working:
- Land eDB#82 (CI install fix), then land a lockfile regeneration so
npm ciworks onmasterat all. - Add the
frontendPR job from finding #2. Without it, step 3 is unverifiable in CI. - Only then take a combined
vite6→8 +@vitejs/plugin-react4→6 bump, withnpm ci,tsc --noEmit,npm run buildandvitest runall green.
This PR should not merge before step 3, in whatever form it takes.
Verification I ran
Local, npm 11.17.0 / node 24.19.0, package.json + package-lock.json extracted from each ref:
- this head —
npm ci --dry-run→ rc 1:npm error code ERESOLVE npm error While resolving: @vitejs/plugin-react@6.1.1 npm error Found: vite@6.4.2 … dev vite@"^6.3.1" from the root project npm error Could not resolve dependency: npm error peer vite@"^8.0.0" from @vitejs/plugin-react@6.1.1 npm error Conflicting peer dependency: vite@8.2.2 origin/master—npm ci --dry-run→ rc 1,EUSAGE … package.json and package-lock.json … are not in sync,Missing: vitest@2.1.9,jsdom@25.0.1,@testing-library/react@16.3.3,@testing-library/jest-dom@6.9.1and others (finding #4).- eDB#76 head and eDB#79 head —
npm ci --dry-run→ rc 0 both, confirming the conflict is specific to this PR's plugin bump and not to the lock regeneration the three share. - Trigger claim in finding #3 read from
git show 1a40fd11:.github/workflows/ci.yml(pull_request: branches: [main]) againstorigin/master'sbranches: [master, main], andgit merge-base→5e436bd.
Not checked
- npm version differs from CI. I ran npm 11.17.0;
nightly.yml:57-60andweekly.yml:58-61use node 22.x, which ships npm ~10.9. Peer-dependency enforcement innpm ciis present in both majors, so I expect the same failure, but I did not reproduce it on npm 10. --dry-runonly. Nothing was actually installed, built or run: notsc --noEmit, nonpm run build, novitest runon any of the three heads. rc 0 for #76/#79 means "resolves", not "builds".- I did not evaluate whether
vite8 is viable for this project —vite.config.tsandvitest.config.tswere not read, andvitest@^2.0.0has its own vite peer range that a vite 8 bump would also have to satisfy. The recommendation in finding #1 is a direction, not a verified plan. - The 2374-line lockfile diff was not reviewed line by line; I checked the root package block, the
viteentry and the@vitejs/plugin-reactentry, and otherwise relied onnpm cito validate it.
Automated architecture review of 1a40fd113535 — scheduled, model claude-opus-5, checked against the EmbeddedOS Master Design v2.0. Advisory only: this reviewer never approves, requests changes, or merges. Reply here to discuss or push back — a wrong finding is a bug worth reporting.
Bumps @vitejs/plugin-react from 4.7.0 to 6.1.1.
Release notes
Sourced from @vitejs/plugin-react's releases.
... (truncated)
Changelog
Sourced from @vitejs/plugin-react's changelog.
... (truncated)
Commits
04cac50release: plugin-react@6.1.1 (#1440)82d35abfix(react): respect environment sourcemap option whenbuilder.sharedPlugins...397e847fix(react): make logging diagnostics an opt-in for React Compiler (#1431)61006e6fix(deps): update all non-major dependencies (#1433)e2a649cchore: usedeps.neverBundleinstead ofexternalin tsdown config (#1430)fb2d6f3fix(deps): update all non-major dependencies (#1427)39b3173release: plugin-react@6.1.0 (#1428)f1340b0feat(react): add native React Compiler support (#1419)9ab698efix(deps): update all non-major dependencies (#1375)68c0cb8release: plugin-react@6.0.5 (#1362)Maintainer changes
This version was pushed to npm by GitHub Actions, a new releaser for
@vitejs/plugin-reactsince your current version.Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)