Git Integration fails after successful build for rootDirectory=web Next.js app

We have a Vercel Git Integration deployment failing for a Next.js project whose configured Root Directory is web.

Project:

  • name: brenda-voice
  • rootDirectory: web
  • framework: nextjs
  • nodeVersion: 24.x

Failing deployment:

  • https://brenda-voice-9dg4v4col-theonlyperson.vercel.app

What happens:

  • Build completes successfully.
  • next build, TypeScript, and static page generation all finish successfully.
  • After build completion, Vercel marks the deployment as Error during finalization.

Exact error from the deployment record:

  • ENOENT: no such file or directory, lstat '/vercel/path0/.next/routes-manifest-deterministic.json'

Why this looks wrong:

  • The app lives in the web/ subdirectory.
  • The project is configured with rootDirectory = web.
  • The build output is under /vercel/path0/web/.next, but finalization appears to be looking under /vercel/path0/.next at repo root.

Additional context:

  • Workspace path-length guard passes with zero filename/path violations.
  • Local app build also passes.
  • Recent production deployments for this project are failing with the same post-build behavior.

Is this a known Vercel / Next.js subdirectory-project bug around routes-manifest-deterministic.json lookup during deployment finalization? If so, what is the recommended workaround?