From 32f718e4a51dbe13be3ffa86d002f73c7a6692df Mon Sep 17 00:00:00 2001 From: yiliang114 <1204183885@qq.com> Date: Thu, 21 May 2026 20:42:56 +0800 Subject: [PATCH] fix(vscode): skip redundant tsc build in prepackage to prevent TS5055 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The prepackage script called `npm run build` (full tsc compilation of all workspace packages) before bundling. This second tsc pass fails with TS5055 in CI because: 1. `npm ci` already built everything via the `prepare` lifecycle 2. `release:version` bumps package versions, making tsbuildinfo stale 3. The redundant `npm run build` triggers tsc --build which attempts a full rebuild, but composite project references cause dist/*.d.ts to be resolved as input files → TS5055 The fix removes the redundant `npm run build` call. The CLI bundle is produced by esbuild directly from TypeScript source files (entry: packages/cli/index.ts), so compiled dist/ artifacts are not needed. Root cause introduced by #4295 (composite project references). --- packages/vscode-ide-companion/scripts/prepackage.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/vscode-ide-companion/scripts/prepackage.js b/packages/vscode-ide-companion/scripts/prepackage.js index 16131e40bde..60ba42929bf 100644 --- a/packages/vscode-ide-companion/scripts/prepackage.js +++ b/packages/vscode-ide-companion/scripts/prepackage.js @@ -178,11 +178,11 @@ function removeSelfReferenceFromNodeModules() { function main() { const npm = npmBin(); - // Root bundling depends on built workspace outputs. Use the root build to - // ensure all required workspace dist/ artifacts exist. - console.log('[prepackage] Building repo...'); - run(npm, ['--prefix', repoRoot, 'run', 'build'], { cwd: repoRoot }); - + // The CLI bundle is produced by esbuild directly from TypeScript source + // (entryPoint: packages/cli/index.ts), so a full tsc build is not needed. + // Calling `npm run build` here would trigger tsc --build a second time + // (after the initial `prepare` in npm ci) and fail with TS5055 when the + // version bump made source files diverge from the stale tsbuildinfo. console.log('[prepackage] Bundling root CLI...'); run(npm, ['--prefix', repoRoot, 'run', 'bundle'], { cwd: repoRoot });