diff --git a/.github/workflows/build-native.yml b/.github/workflows/build-native.yml index f8f8c0423..ff770c679 100644 --- a/.github/workflows/build-native.yml +++ b/.github/workflows/build-native.yml @@ -145,6 +145,27 @@ jobs: - name: Wait for npm registry propagation run: sleep 30 + - name: Verify platform packages are published + run: | + VERSION=$(node -p "require('./package.json').version") + echo "Verifying platform packages at version ${VERSION}..." + FAILED=0 + for platform in darwin-arm64 darwin-x64 linux-x64-gnu linux-arm64-gnu win32-x64-msvc; do + PKG="@gsd-build/engine-${platform}" + PUBLISHED=$(npm view "${PKG}@${VERSION}" version 2>/dev/null || echo "") + if [ "${PUBLISHED}" = "${VERSION}" ]; then + echo " ✓ ${PKG}@${VERSION}" + else + echo "::error::${PKG}@${VERSION} not found on npm (got: '${PUBLISHED}')" + FAILED=1 + fi + done + if [ "${FAILED}" = "1" ]; then + echo "::error::One or more platform packages are missing from npm. Aborting main package publish to prevent broken installs." + exit 1 + fi + echo "All platform packages verified." + - name: Publish main package env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}