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:34 -07:00
co-authored by Hanzo Dev
parent 742630e06b
commit 23d130b4df
+22 -10
View File
@@ -16,7 +16,7 @@
// [1]: https://node.green
"module": "commonjs",
"target": "ES2022",
"moduleResolution": "node",
"moduleResolution": "node16",
// We add esnext to lib to pull in types for all newer ECMAScript features
"lib": ["esnext", "dom"],
@@ -93,16 +93,28 @@
"esModuleInterop": true,
"experimentalDecorators": true,
"resolveJsonModule": true,
"baseUrl": "../",
"paths": {
"sentry/*": ["static/app/*"],
"sentry-fixture/*": ["fixtures/js-stubs/*"],
"sentry-test/*": ["tests/js/sentry-test/*"],
"sentry-images/*": ["static/images/*"],
"sentry-locale/*": ["src/sentry/locale/*"],
"sentry-logos/*": ["src/sentry/static/sentry/images/logos/*"],
"sentry-fonts/*": ["static/fonts/*"]
"sentry/*": [
"../static/app/*"
],
"sentry-fixture/*": [
"../fixtures/js-stubs/*"
],
"sentry-test/*": [
"../tests/js/sentry-test/*"
],
"sentry-images/*": [
"../static/images/*"
],
"sentry-locale/*": [
"../src/sentry/locale/*"
],
"sentry-logos/*": [
"../src/sentry/static/sentry/images/logos/*"
],
"sentry-fonts/*": [
"../static/fonts/*"
]
},
"plugins": [