build: use native Node TypeScript - #53
Draft
lewxdev wants to merge 2 commits into
Draft
Conversation
Prompt: pull the latest changes and start implementing this Co-authored-by: Codex <codex@openai.com>
Prompt: we should use subpath imports supported by node over ts aliases Co-authored-by: Codex <codex@openai.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
summary
@/*alias with the packageimportsmap#app/*.ts,.tsx, andindex.tsspecifiers so Node, TypeScript, and Next.js share one resolution sourceserver/and refactor non-erasable parameter propertiestsxplus its transitiveesbuildpackagescompatibility
The established
#app/*form is intentional. Node.js 24.18.0 accepts the newer#/…form, but TypeScript 5.9.3 still rejects those specifiers.#app/*works in both.Node's default dependency watcher also observes modules loaded and regenerated by Next.js, which caused restart loops during development. The script therefore uses
--watch-pathforserver/andapp/utils/.Node.js 24.18.0 documents
--watch-pathas macOS/Windows-only. Production Linux startup is unaffected, but Linux local development would require a future portable wrapper or a third-party watcher.The latest
mainalso has a pre-existing React ref type error atapp/components/field.tsx:102. It is unchanged here to keep this PR narrowly scoped.validation
npm ciimport("#app/utils/game.ts")under Node.js 24.18.0npm run lintnpm audit— 0 vulnerabilitiesgit diff --checknpm run dev— HTTP 200 with the package importsnpx tsc --noEmit --incremental false— only the pre-existing React ref error aboveBASE_URL=http://localhost:3000 npm run build— webpack compiles the package imports successfully, then the unchanged React ref error blocks type checkingnpm run startfrom that build — HTTP 200