The vsix ships node-pty built for the publishing machine only; everyone else hits posix_spawnp failed. (ROADMAP_1.0.md D9; flagged as a blocker in the original spike).
Work:
- CI matrix producing per-target packages:
vsce package --target darwin-arm64 darwin-x64 linux-x64 linux-arm64, each containing node-pty built for that platform against the supported VS Code Electron ABI range.
- Decide prebuild strategy: compile-in-CI per target (electron-rebuild in the matrix) vs adopting a prebuilds-shipping node-pty; document the Electron-major support window and the policy for when VS Code bumps it.
- Local dev path (
install.sh) unchanged.
Acceptance: installing the right target vsix on a clean machine of each platform launches sandy with zero rebuild steps; code --install-extension picks the right target from Marketplace automatically. Size L — the only genuinely hard engineering left before 1.0; can start in parallel with 0.7/0.8.
The vsix ships node-pty built for the publishing machine only; everyone else hits
posix_spawnp failed.(ROADMAP_1.0.md D9; flagged as a blocker in the original spike).Work:
vsce package --target darwin-arm64 darwin-x64 linux-x64 linux-arm64, each containing node-pty built for that platform against the supported VS Code Electron ABI range.install.sh) unchanged.Acceptance: installing the right target vsix on a clean machine of each platform launches sandy with zero rebuild steps;
code --install-extensionpicks the right target from Marketplace automatically. Size L — the only genuinely hard engineering left before 1.0; can start in parallel with 0.7/0.8.