Parent: #33
Summary
Bundle the downstage binary into platform-specific VSIX packages, but do not add a second cross-compile pipeline in the VS Code workflow. The release workflow should reuse the platform binaries already produced by GoReleaser and package those into target-specific VSIX artifacts.
The VS Code workflow should be reframed as CI only: lint, compile, and packaging smoke-test. Release artifact production belongs in the release workflow.
Targets
linux-x64
darwin-x64
darwin-arm64
win32-x64
Versioning and changelog ownership are tracked in #47. This issue is about producing platform-specific VSIX artifacts that bundle the release binary and align extension packaging with the existing release pipeline.
Direction
- GoReleaser remains the source of truth for platform binaries
- The release workflow packages VSIX files from local GoReleaser outputs in
dist/
- The VS Code workflow remains CI and does not own cross-compilation or release publishing
- The extension should prefer an explicitly configured
downstage.server.path, then a bundled binary, then PATH
Work
Non-goals
- Adding a separate cross-compile matrix to the VS Code workflow
- Rebuilding release binaries in Node packaging scripts when GoReleaser already produced them
Parent: #33
Summary
Bundle the
downstagebinary into platform-specific VSIX packages, but do not add a second cross-compile pipeline in the VS Code workflow. The release workflow should reuse the platform binaries already produced by GoReleaser and package those into target-specific VSIX artifacts.The VS Code workflow should be reframed as CI only: lint, compile, and packaging smoke-test. Release artifact production belongs in the release workflow.
Targets
linux-x64darwin-x64darwin-arm64win32-x64Versioning and changelog ownership are tracked in #47. This issue is about producing platform-specific VSIX artifacts that bundle the release binary and align extension packaging with the existing release pipeline.
Direction
dist/downstage.server.path, then a bundled binary, thenPATHWork
package.mjsto support release packaging from an already-built binary pathpackage.mjsto emit platform-specific VSIX packages viavsce package --target <platform>package.mjsto copy the rootCHANGELOG.mdinto the staged extension during packagingNon-goals