build(deps): bump @vitest/mocker from 4.1.10 to 5.0.0 in the npm_and_yarn group across 0 directory #2289
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Eval SKILL.md (Fork PRs) | |
| on: | |
| pull_request_target: | |
| types: [labeled, synchronize] | |
| permissions: | |
| contents: read | |
| statuses: write | |
| pull-requests: write | |
| env: | |
| # Pin Node to the exact patched release rather than floating on the runner's | |
| # pre-cached major. Node 24.17.0 (CVE-2026-48931's http.Agent fix) added a | |
| # `data` listener on idle agent sockets that makes keep-alive fetch reuse | |
| # throw a false ERR_STREAM_PREMATURE_CLOSE — exactly the failure the | |
| # skill-eval planner hits talking to external APIs. Fixed in 24.18.0 | |
| # (nodejs/node#64004). Keep in sync with NODE_VERSION_24 in ci.yml. | |
| NODE_VERSION_24: "24.18.0" | |
| jobs: | |
| remove-labels-on-sync: | |
| name: Reset eval labels | |
| if: github.event.action == 'synchronize' | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Remove eval labels | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| run: | | |
| PR=${{ github.event.number }} | |
| REPO=${{ github.repository }} | |
| gh api "repos/$REPO/issues/$PR/labels/eval-skill" -X DELETE 2>/dev/null || true | |
| gh api "repos/$REPO/issues/$PR/labels/eval-skill-passed" -X DELETE 2>/dev/null || true | |
| eval: | |
| name: Run skill eval | |
| if: >- | |
| github.event.action == 'labeled' | |
| && github.event.label.name == 'eval-skill' | |
| && github.event.pull_request.head.repo.fork == true | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| ref: ${{ github.event.pull_request.head.sha }} | |
| - uses: pnpm/action-setup@v4 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: ${{ env.NODE_VERSION_24 }} | |
| - uses: actions/cache@v5 | |
| id: cache | |
| with: | |
| path: | | |
| node_modules | |
| packages/*/node_modules | |
| apps/*/node_modules | |
| key: node-modules-${{ hashFiles('pnpm-lock.yaml', '.npmrc', 'packages/cli/patches/**') }} | |
| - if: steps.cache.outputs.cache-hit != 'true' | |
| run: pnpm install --frozen-lockfile | |
| - name: Generate docs and skill files | |
| run: pnpm run generate:schema && pnpm run generate:docs | |
| - name: Eval SKILL.md | |
| id: eval | |
| run: pnpm run eval:skill | |
| env: | |
| OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }} | |
| ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} | |
| continue-on-error: true | |
| - name: Post commit status | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| run: | | |
| SHA="${{ github.event.pull_request.head.sha }}" | |
| if [[ "${{ steps.eval.outcome }}" == "success" ]]; then | |
| STATE="success" | |
| DESC="Skill eval passed" | |
| else | |
| STATE="failure" | |
| DESC="Skill eval failed" | |
| fi | |
| gh api "repos/${{ github.repository }}/statuses/$SHA" \ | |
| -f state="$STATE" \ | |
| -f context="eval-skill/fork" \ | |
| -f description="$DESC" | |
| - name: Remove eval-skill label | |
| if: always() | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| run: | | |
| gh api "repos/${{ github.repository }}/issues/${{ github.event.number }}/labels/eval-skill" \ | |
| -X DELETE 2>/dev/null || true | |
| # Use the SENTRY_RELEASE_BOT app token to add the label — app tokens | |
| # can trigger workflow runs, unlike GITHUB_TOKEN (recursion protection). | |
| - name: Get app token | |
| id: token | |
| if: steps.eval.outcome == 'success' | |
| uses: actions/create-github-app-token@v3 | |
| with: | |
| app-id: ${{ vars.SENTRY_RELEASE_BOT_CLIENT_ID }} | |
| private-key: ${{ secrets.SENTRY_RELEASE_BOT_PRIVATE_KEY }} | |
| - name: Add eval-skill-passed label (triggers main CI re-run) | |
| if: steps.eval.outcome == 'success' | |
| env: | |
| GH_TOKEN: ${{ steps.token.outputs.token }} | |
| run: | | |
| gh api "repos/${{ github.repository }}/issues/${{ github.event.number }}/labels" \ | |
| --input - <<< '{"labels":["eval-skill-passed"]}' |