Why the resolver crashes
Vite 8’s dependency resolver runs on Rolldown, a native (Rust) binding exposed to JavaScript through a public resolver API. Vite’s own code is supposed to fully populate that binding’s config object before handing it to consuming plugins. In Vite 8.0.10, paired with rolldown@1.0.0-rc.17, that public API stopped populating every field the native binding expects.
@tailwindcss/vite calls Vite’s resolver directly during its own build-time CSS-generation step, to locate the tailwindcss package itself on disk. With the config object incomplete, that lookup throws instead of resolving:
[@tailwindcss/vite:generate:build] Missing field `tsconfigPaths` on BindingViteResolvePluginConfig.resolveOptionsThe same underlying resolver gap was reported twice within a week: once directly against Vite (vitejs/vite#22322, opened 2026-04-24) and once against Astro’s own astro add tailwind flow, which installs @tailwindcss/vite by default (withastro/astro#16542, opened 2026-04-30, “astro add tailwind installs incompatible @tailwindcss/vite”). Both point at the same root cause: an incomplete Rolldown resolver config, not a Tailwind bug.
Fix it: upgrade Vite and Rolldown
Before: the crash
vite v8.0.10 building for production...
[@tailwindcss/vite:generate:build] Missing field `tsconfigPaths` on BindingViteResolvePluginConfig.resolveOptionsAfter: bump both packages
npm install vite@latest rolldown@latest
npm run buildUpgrading just vite isn’t always enough on its own, since rolldown is a separate package in your lockfile and npm won’t necessarily pull a newer one unless something forces it. Check both versions directly if the crash persists after a plain vite bump:
npm ls vite rolldownNo PostCSS fallback needed if you're already past this range
If your lockfile already resolves vite and rolldown newer than the
versions above, you were never exposed to this crash. There’s nothing to fix.
Check your resolved versions before changing anything.
Confirmed version range
Confirmed not reproducible against this site’s own dependencies: vite@8.1.5 and rolldown@1.1.5 (both resolved via astro@7.1.3’s "vite": "^8.0.13" dependency), with @tailwindcss/vite actively wired into astro.config.mjs’s vite.plugins array on this exact site. npm run build completes cleanly. The resolver gap appears to have been closed somewhere between rolldown@1.0.0-rc.17 and 1.1.5, even though neither GitHub issue was closed with a linked fix PR. Both were closed as “not planned,” which usually means later dependency updates made the original report stale rather than a deliberate patch.
If you’re hitting this today, you’re very likely on an intermediate Vite 8.0.x patch. Upgrading is the fix, not a workaround. Browse more posts like this in the Guides & Fixes archive.







