name: Publish to npm on: push: tags: - "v*" release: types: [published] jobs: publish: runs-on: ubuntu-latest permissions: contents: read id-token: write steps: - uses: actions/checkout@v4 - name: Use Node.js uses: actions/setup-node@v4 with: node-version: 24.x registry-url: "https://registry.npmjs.org" cache: npm - name: Install dependencies run: npm ci - name: Type check run: npm run check - name: Build run: npm run build - name: Test run: npm test - name: Publish run: npm publish --provenance --access public env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}