name: Stage npm release on: release: types: [published] permissions: contents: read id-token: write concurrency: group: npm-stage cancel-in-progress: false jobs: stage: runs-on: ubuntu-latest steps: - name: Check out the release uses: actions/checkout@v7 with: persist-credentials: false - name: Set up Node.js uses: actions/setup-node@v7 with: node-version: "24" registry-url: https://registry.npmjs.org package-manager-cache: false - name: Set up Bun uses: oven-sh/setup-bun@v2 with: bun-version: "1.3.13" - name: Install npm with staged publishing support run: npm install --global npm@^11.15.0 - name: Verify the release tag run: | PACKAGE_VERSION=$(node -p "require('./package.json').version") test "$GITHUB_REF_NAME" = "v$PACKAGE_VERSION" - name: Install dependencies run: bun install --frozen-lockfile - name: Stage package on npm run: npm stage publish