Skip to content

chore(build): remove redundant vite-tsconfig-paths plugin - #250

Merged
ttbombadil merged 1 commit into
mainfrom
chore/remove-vite-tsconfig-paths
Oct 12, 2026
Merged

ttbombadil merged 1 commit into
mainfrom
chore/remove-vite-tsconfig-paths

Conversation

@ttbombadil

Copy link
Copy Markdown
Collaborator

Summary

Removes the vite-tsconfig-paths plugin. Vite 8 prints on every dev server and test start:

The plugin "vite-tsconfig-paths" is detected. Vite now supports tsconfig paths resolution natively via the resolve.tsconfigPaths option. You can remove the plugin and set resolve.tsconfigPaths: true in your Vite config instead.

The plugin is redundant here, so it is removed rather than migrated to resolve.tsconfigPaths: true:

  • vite.config.ts and vitest.config.ts already define the same mappings as explicit resolve.alias entries (@, @shared).
  • tsconfig.json declares only @/* and @shared/*, both covered by those aliases.

Changes

  • vite.config.ts, vitest.config.ts: drop the import and tsconfigPaths().
  • package.json, package-lock.json: drop the dependency and its exclusive transitive packages (tsconfck, globrex).

Not changed: no resolve.tsconfigPaths, no alias refactor. tsconfig.json paths stay, they still serve tsc and tsx.

Verification

  • npm ci, npm run check, npm run lint, npm run check:docs, npm run build (total bundle size unchanged: 3,995,542 bytes), npm run test:unit (309 files / 3061 tests passed).
  • Dev server (npm run dev:client): started without a resolve error; the page and every module reachable from the entry were requested (152 modules: 113 under /src, 10 from shared, 23 pre-bundled deps; 0 non-200 responses). In the repo, 76 client files import @/… and 39 import @shared/….
  • Browser load of the dev server's start page (/api requests aborted): the app root rendered, no Vite error overlay, no resolve/pre-transform errors.
  • Full ./run-tests.sh (static analysis, knip, unit, toolchain integration, Docker, Playwright E2E, production build, security audit, Sonar gate with 0 violations).

Based on current main; independent of #249.

🤖 Generated with Claude Code

Vite 8 reports that tsconfig path resolution is built in and the plugin is
no longer needed. Both vite.config.ts and vitest.config.ts already define
the same mappings as explicit resolve.alias entries (@, @shared), which
cover every path in tsconfig.json (@/*, @shared/*), so the plugin added
nothing.

Remove the plugin from both configs and the dependency, including its
exclusive transitive packages (tsconfck, globrex). No switch to
resolve.tsconfigPaths and no alias changes.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@ttbombadil
ttbombadil marked this pull request as ready for review October 12, 2026 16:45
@ttbombadil
ttbombadil merged commit f3019c1 into main Oct 12, 2026
6 checks passed
@ttbombadil
ttbombadil deleted the chore/remove-vite-tsconfig-paths branch October 13, 2026 04:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant