name: PR Request Changes Message on: pull_request_review: types: [submitted] jobs: check: runs-on: ubuntu-latest steps: - name: Check Previous Reviews id: result uses: actions/github-script@v7 with: github-token: ${{ secrets.GITHUB_TOKEN }} script: | const pr = context.payload.pull_request; const review = context.payload.review; const reviews = await github.rest.pulls.listReviews({ owner: context.repo.owner, repo: context.repo.repo, pull_number: pr.number, }); const changesRequestedReviews = reviews.data.filter((review) => review.state === 'CHANGES_REQUESTED'); const firstTimeChangesRequested = changesRequestedReviews.length === 1; // Set firstTimeChangesRequested as output of this step core.setOutput("firstTimeChangesRequested", firstTimeChangesRequested) comment: needs: check runs-on: ubuntu-latest steps: - name: Comment on PR uses: actions/github-script@v7 with: github-token: ${{ secrets.GITHUB_TOKEN }} script: | const pr = context.payload.pull_request; // Get output from previous 'check' step const firstTimeChangesRequested = needs.check.outputs.firstTimeChangesRequested if (firstTimeChangesRequested === 'true') { github.rest.issues.createComment({ owner: context.repo.owner, repo: context.repo.repo, issue_number: pr.number, body: 'Please make sure to **re-request review** after making any changes or answering any questions' }); }