Skip to content

build(deps-dev): bump setuptools from 84.1.0 to 84.2.1 #1

build(deps-dev): bump setuptools from 84.1.0 to 84.2.1

build(deps-dev): bump setuptools from 84.1.0 to 84.2.1 #1

Workflow file for this run

# Copilot addresses the maintainers' review comments on a draft PR that the triage workflow opened,

Check warning on line 1 in .github/workflows/revision.yml

View workflow run for this annotation

GitHub Actions / PR revision

Workflow execution policy warning (evaluate mode)

On December 2, 2026, GitHub will restrict `pull_request_target` on public repositories by default. To continue allowing the event trigger, configure an Actions policy. Learn more: https://gh.io/securely-using-pull_request_target#default-policy-for-pull_request_target
# without write credentials. A fresh job pushes the new commit to the PR's branch using the app, so
# CI runs on it. The steps that are the same for every Playwright repo are actions in
# microsoft/playwright, and the shared guide they carry says how to revise; the prompt below has
# what is specific to this repo.
name: PR revision
on:
# Apply needs-revision, needs-revision-mac or needs-revision-win; re-apply it to trigger another pass.
# pull_request_target always runs this file from main; the jobs only accept the triage app's own PRs.
pull_request_target:
types: [labeled]
permissions: {}
jobs:
prepare:
name: Collect the maintainers' comments
if: >-
github.repository == 'microsoft/playwright-python' &&
contains(fromJSON('["needs-revision","needs-revision-mac","needs-revision-win"]'), github.event.label.name) &&
github.event.pull_request.state == 'open' &&
github.event.pull_request.user.login == 'microsoft-playwright-automation[bot]' &&
github.event.pull_request.head.repo.full_name == github.repository
runs-on: ubuntu-latest
permissions:
pull-requests: write
env:
PLATFORM: ${{ fromJSON('{"needs-revision":"linux","needs-revision-mac":"mac","needs-revision-win":"windows"}')[github.event.label.name] }}
outputs:
head: ${{ steps.collect.outputs.head }}
base: ${{ steps.collect.outputs.base }}
branch: ${{ steps.collect.outputs.branch }}
platform: ${{ env.PLATFORM }}
steps:
- name: Collect the PR and the maintainers' comments
id: collect
uses: microsoft/playwright/.github/actions/collect-review@main
with:
pull-request: ${{ github.event.pull_request.number }}
- name: Post the run link
env:
GH_TOKEN: ${{ github.token }}
PR: ${{ github.event.pull_request.number }}
PLATFORM_NAME: ${{ fromJSON('{"linux":"Linux","mac":"macOS","windows":"Windows"}')[env.PLATFORM] }}
RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
run: |
body=$(printf "Hi, I'm the Playwright bot. I started to address the review comments on %s: [agent run](%s)\n<!-- playwright-revision-started -->" "$PLATFORM_NAME" "$RUN_URL")
gh pr comment "$PR" --body "$body" || echo "::warning::Could not post the run link"
revise:
name: Revise PR ${{ github.event.pull_request.number }} (${{ needs.prepare.outputs.platform }})
needs: prepare
runs-on: ${{ fromJSON('{"linux":"playwright-x64-ubuntu24-64-core","mac":"macos-15-xlarge","windows":"playwright-x64-server2025-64-core"}')[needs.prepare.outputs.platform] }}
timeout-minutes: 240
concurrency:
group: revision-${{ github.event.pull_request.number }}
cancel-in-progress: false
defaults:
run:
shell: bash
env:
PR: ${{ github.event.pull_request.number }}
HEAD_SHA: ${{ needs.prepare.outputs.head }}
BASE_SHA: ${{ needs.prepare.outputs.base }}
TRIAGE_PLATFORM: ${{ needs.prepare.outputs.platform }}
permissions:
copilot-requests: write
outputs:
has_revision: ${{ steps.agent.outputs.has-result }}
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
ref: ${{ needs.prepare.outputs.head }}
persist-credentials: false
- name: Fetch the base and record the directories
run: |
git fetch --no-tags --depth=1 origin "$BASE_SHA"
echo "OUTPUT_DIR=${RUNNER_TEMP//\\//}/revision" >> "$GITHUB_ENV"
echo "REVIEW_DIR=${RUNNER_TEMP//\\//}/review" >> "$GITHUB_ENV"
echo "SCRATCH_DIR=${RUNNER_TEMP//\\//}/scratch" >> "$GITHUB_ENV"
echo "REPO_DIR=${GITHUB_WORKSPACE//\\//}" >> "$GITHUB_ENV"
mkdir -p "${RUNNER_TEMP//\\//}/revision" "${RUNNER_TEMP//\\//}/scratch"
- uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
with:
name: review
path: ${{ runner.temp }}/review
- name: Set up the runner
uses: ./.github/actions/setup-triage-runner
- name: Revise with Copilot CLI
id: agent
# No GitHub tools and no URL access: the agent reads the PR only from the review the prepare job filtered.
uses: microsoft/playwright/.github/actions/run-agent@main
with:
prompt: |
Follow the shared guide revision.md and this repo's AGENTS.md. Read both in full before starting. $PLAYWRIGHT_DIR is the .upstream/ checkout of microsoft/playwright at the commit in DRIVER_VERSION; do not edit, commit or switch branches in it.
Pull request: https://github.com/microsoft/playwright-python/pull/${{ github.event.pull_request.number }}
output-dir: ${{ env.OUTPUT_DIR }}
result-file: commit/commit.json
artifact-name: revision
exec: ${{ env.CI_ENV_EXEC }}
push:
name: Push the revision
needs: [prepare, revise]
# commit.json is written last, so a finished revision is pushed even when the job failed later.
if: ${{ !cancelled() && needs.revise.outputs.has_revision == 'true' }}
runs-on: ubuntu-latest
steps:
- uses: actions/create-github-app-token@64ab729a6294000f5aa4a4bc0b73d1f32bc45510 # v3.3.0
id: app-token
with:
app-id: ${{ vars.PLAYWRIGHT_APP_ID }}
private-key: ${{ secrets.PLAYWRIGHT_PRIVATE_KEY }}
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
ref: ${{ needs.prepare.outputs.head }}
token: ${{ steps.app-token.outputs.token }}
- uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
with:
name: revision
path: ${{ runner.temp }}/revision
# Never execute code or scripts from the proposed changes in the app job.
- name: Validate and push
uses: microsoft/playwright/.github/actions/publish-patch@main
with:
token: ${{ steps.app-token.outputs.token }}
dir: ${{ runner.temp }}/revision/commit
patch: revision.patch
metadata: commit.json
branch: ${{ needs.prepare.outputs.branch }}