bun run release:platform-packages downloads each engine-v<ENGINE_VERSION> binary with its .sha256 sidecar (required; nothing unverified is published), stages the package from cli/platform-packages/<target> with the version stamped, the executable at bin/ and the repo LICENSE, and runs npm publish --access public. Targets already on the registry are skipped so a re-run resumes after a partial failure. Preconditions: package.json pins equal ENGINE_VERSION and npm is logged in. Co-Authored-By: Claude Code <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Vau2X53xGTjjTCXWMVBoNY
Platform packages
Templates for the @impeccable/cli-<os>-<arch> packages the impeccable npm
shim (cli/bin/cli.js) declares as optionalDependencies. npm installs only
the one matching the host (os / cpu fields), and the shim resolves
<package>/bin/impeccable[.exe] from it before falling back to the user cache
or a download.
They are published from the engine release, not built here: bun run release:platform-packages (scripts/publish-platform-packages.mjs) copies each template, sets version to the engine version, drops the
built binary at bin/impeccable[.exe] (executable), and publishes it under
@impeccable. The version pinned in this repo's package.json
optionalDependencies must equal ENGINE_VERSION.
Targets: darwin-arm64, darwin-x64, linux-x64, linux-arm64, windows-x64.