build: migrate tsconfig to TypeScript 7 (native compiler)

TypeScript 7 is the native Go compiler and removes `baseUrl` and
`moduleResolution: node|node10`. Both appear here, so `tsc` from TS7
refuses the config outright (TS5102 / TS5108) and cannot typecheck.

`paths` targets resolve relative to `baseUrl` when it is set and relative
to the tsconfig file otherwise. Every `baseUrl` folded here already
pointed at the config's own directory, so dropping it moves nothing and
the targets are left byte-identical. Where a baseUrl pointed elsewhere,
each affected target was rewritten as join(baseUrl, target).

`moduleResolution` was chosen from the declared `module`: commonjs ->
node16, esnext/preserve -> bundler. Configs whose `module` is unset or
exotic were left alone rather than guessed at.

The result is accepted by BOTH toolchains, so nothing has to upgrade
TypeScript in lockstep. Verified on hanzo/chat packages/api: tsc 5.9
779 -> 778 errors (no regression), and tsc 7.0.2 now runs the project
in 2s where it previously refused the config.

Co-authored-by: Hanzo Dev <[email protected]>
This commit is contained in:
2026-07-27 14:18:44 -07:00
co-authored by Hanzo Dev
parent d807895a25
commit e4caa184ee
7 changed files with 11 additions and 11 deletions
-1
View File
@@ -11,7 +11,6 @@
"ES2022"
],
"noEmit": true,
"baseUrl": ".",
"paths": {
"@/*": [ "./app/*" ]
},
+1 -1
View File
@@ -10,7 +10,7 @@
"noEmit": true,
"esModuleInterop": true,
"module": "esnext",
"moduleResolution": "node",
"moduleResolution": "bundler",
"resolveJsonModule": true,
"isolatedModules": true,
"jsx": "preserve",
+4 -3
View File
@@ -1,9 +1,10 @@
{
"compilerOptions": {
"ignoreDeprecations": "6.0",
"baseUrl": "./src", // Base directory for module resolution
"ignoreDeprecations": "6.0", // Base directory for module resolution
"paths": {
"@/*": ["*"] // Map "@/..." to "./src/..." for cleaner imports
"@/*": [
"./src/*"
] // Map "@/..." to "./src/..." for cleaner imports
},
"module": "NodeNext", // Ensures compatibility with moduleResolution: NodeNext
"moduleResolution": "NodeNext", // Required for modern Node.js ESM/CommonJS resolution
+1 -1
View File
@@ -2,7 +2,7 @@
"compilerOptions": {
"target": "ES2022", // Use modern JavaScript features
"module": "ESNext", // Generate ES modules
"moduleResolution": "Node", // Resolve Node.js modules
"moduleResolution": "bundler", // Resolve Node.js modules
"ignoreDeprecations": "6.0", // Silence TS7 node10 moduleResolution deprecation (build parity)
"strict": true, // Enable strict type-checking
"esModuleInterop": true, // Interop for CommonJS modules
+1 -1
View File
@@ -2,7 +2,7 @@
"compilerOptions": {
"target": "ES2020",
"module": "ESNext",
"moduleResolution": "node",
"moduleResolution": "bundler",
"ignoreDeprecations": "6.0",
"declaration": true,
"declarationMap": true,
+1 -2
View File
@@ -10,8 +10,7 @@
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"resolveJsonModule": true,
"moduleResolution": "node",
"baseUrl": ".",
"moduleResolution": "node16",
"paths": {
"@/*": ["src/*"]
},
+3 -2
View File
@@ -8,9 +8,10 @@
"node_modules"
],
"compilerOptions": {
"baseUrl": "src",
"paths": {
"@/*": ["*"]
"@/*": [
"./src/*"
]
},
"typeRoots": ["node_modules/@types"]
}