In the postinstall script (apps/cli/src/build.ts), platform is mapped through platformMap to "windows", but the legacy binary path check compares against "win32":
const platformMap = { darwin: "darwin", linux: "linux", win32: "windows" };
const platform = platformMap[os.platform()]; // "windows" on Windows
const legacyCachedBinary = path.join(binDir, platform === "win32" ? ".executor.exe" : ".executor");
// ^^^^^^^^^^ always false
On Windows this always resolves to .executor instead of .executor.exe, so the old binary never gets cleaned up.
Fix: change the comparison to platform === "windows".
Fixed in: apps/cli/src/build.ts
Identified and fixed with AI assistance.
In the postinstall script (
apps/cli/src/build.ts),platformis mapped throughplatformMapto"windows", but the legacy binary path check compares against"win32":On Windows this always resolves to
.executorinstead of.executor.exe, so the old binary never gets cleaned up.Fix: change the comparison to
platform === "windows".Fixed in:
apps/cli/src/build.tsIdentified and fixed with AI assistance.