# Debug Session: dev-server-config Status: [OPEN] ## Problem `npm run dev` starts Vite but still reports: - duplicate `exclude` key in `vite.config.ts` - `ENOENT` for `node_modules/xe-utils/es/index.esm.js` ## Hypotheses 1. `vite.config.ts` currently still contains duplicate `exclude` and old `xe-utils/es/index.esm.js` alias. 2. `scripts/verify-shell-package.mjs` or another dev pre-step rewrites `vite.config.ts` before Vite loads it. 3. Vite temporary config/cache files still contain the old alias and are being used. 4. The desired replacement `node_modules/xe-utils/dist/xe-utils.umd.js` does not exist under the current package-manager layout. ## Evidence Log - Current `vite.config.ts` has only one AutoImport `exclude` and `xe-utils` alias points to `node_modules/xe-utils/dist/xe-utils.umd.js`. - `scripts/verify-shell-package.mjs` only reads package files and checks existence; it does not write or rewrite `vite.config.ts`. - Grep found two stale root-level Vite timestamp files: - `vite.config.ts.timestamp-1781167480523-b6781381e1b6b.mjs` - `vite.config.ts.timestamp-1781167360107-21eac96efd747.mjs` - Those timestamp files contained both the duplicate `exclude` and old `node_modules/xe-utils/es/index.esm.js` alias. - `node_modules/xe-utils/dist/xe-utils.umd.js` exists. - After deleting stale timestamp files and narrowing `tsconfig.node.json` include to `vite.config.ts` + `vite.shell-aliases.ts`, `npm run dev` starts successfully. - Post-fix grep found no remaining `xe-utils/es/index.esm.js` matches and no `vite.config.ts.timestamp-*.mjs` files. ## Result Confirmed root cause: stale Vite generated timestamp config files in the project root were being picked up / reported and still contained old invalid config. Current remaining console output is non-fatal Sass deprecation warnings from third-party `vxe-pc-ui` styles.