From 344a435535a4c968a482dd61c5642e475836379c Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sat, 25 Jul 2026 10:43:39 +0000
Subject: [PATCH 1/2] Initial plan


From 6446ce77870557bc9eae547a61045219b2973f01 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sat, 25 Jul 2026 11:01:17 +0000
Subject: [PATCH 2/2] Fix persistent action_required in PR close workflows

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
---
 .github/workflows/label-closed-prs.yml            |  8 ++++++++
 .github/workflows/pr-description-caveman.lock.yml | 11 +++--------
 .github/workflows/pr-description-caveman.md       | 10 +++++++++-
 3 files changed, 20 insertions(+), 9 deletions(-)

diff --git a/.github/workflows/label-closed-prs.yml b/.github/workflows/label-closed-prs.yml
index 46b1f6bdf7b..063140fb072 100644
--- a/.github/workflows/label-closed-prs.yml
+++ b/.github/workflows/label-closed-prs.yml
@@ -11,6 +11,14 @@ permissions:
   checks: read
 
 jobs:
+  skip-non-target-prs:
+    name: Skip Non-Target PRs
+    runs-on: ubuntu-latest
+    if: github.event.pull_request.merged == true || startsWith(github.event.pull_request.head.ref, 'copilot/')
+    steps:
+      - name: Skip workflow for merged or Copilot PRs
+        run: echo "Skipping Label Closed PRs for merged PRs and Copilot branches."
+
   label-closure-reason:
     name: Label PR Closure Reason
     runs-on: ubuntu-latest
diff --git a/.github/workflows/pr-description-caveman.lock.yml b/.github/workflows/pr-description-caveman.lock.yml
index 5a4d83f610d..549fb21bfcd 100644
--- a/.github/workflows/pr-description-caveman.lock.yml
+++ b/.github/workflows/pr-description-caveman.lock.yml
@@ -1,4 +1,4 @@
-# gh-aw-metadata: {"schema_version":"v4","frontmatter_hash":"6bae935057caa20309dd306db3e3d5211b89ee29e61ec580c37b7b099b3b32a8","body_hash":"9bac1d0ec1c8a732ca4069205f2a7b630492340afda7dd1a828c8aa49df56d0a","strict":true,"agent_id":"copilot","engine_versions":{"copilot":"1.0.73"}}
+# gh-aw-metadata: {"schema_version":"v4","frontmatter_hash":"875876afce56ae8f590ecdf262b63cae90073a744693e2f1fb5a1ee8950ad2a3","body_hash":"88150c44885c7be9b99573146df075f4ee8af1ed777af538db6e21ad5452e784","strict":true,"agent_id":"copilot","engine_versions":{"copilot":"1.0.73"}}
 # gh-aw-manifest: {"version":1,"secrets":["COPILOT_GITHUB_TOKEN","GH_AW_GITHUB_MCP_SERVER_TOKEN","GH_AW_GITHUB_TOKEN","GITHUB_TOKEN"],"actions":[{"repo":"actions/cache/restore","sha":"55cc8345863c7cc4c66a329aec7e433d2d1c52a9","version":"v6.1.0"},{"repo":"actions/cache/save","sha":"55cc8345863c7cc4c66a329aec7e433d2d1c52a9","version":"v6.1.0"},{"repo":"actions/checkout","sha":"3d3c42e5aac5ba805825da76410c181273ba90b1","version":"v7.0.1"},{"repo":"actions/download-artifact","sha":"3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c","version":"v8.0.1"},{"repo":"actions/github-script","sha":"3a2844b7e9c422d3c10d287c895573f7108da1b3","version":"v9.0.0"},{"repo":"actions/setup-node","sha":"820762786026740c76f36085b0efc47a31fe5020","version":"v7.0.0"},{"repo":"actions/upload-artifact","sha":"043fb46d1a93c77aae656e7c1c64a875d1fc6a0a","version":"v7.0.1"}],"containers":[{"image":"ghcr.io/github/gh-aw-firewall/agent:0.27.41","digest":"sha256:e39efa0edf10c0d0bfc572b59a186dfccb1973f0f77e224bcf6e5a7d81ee95c8","pinned_image":"ghcr.io/github/gh-aw-firewall/agent:0.27.41@sha256:e39efa0edf10c0d0bfc572b59a186dfccb1973f0f77e224bcf6e5a7d81ee95c8"},{"image":"ghcr.io/github/gh-aw-firewall/api-proxy:0.27.41","digest":"sha256:6e2200dcb6a62b183cdcf7ed86e44713ba5ed8eeaf8de143319458898b6e8118","pinned_image":"ghcr.io/github/gh-aw-firewall/api-proxy:0.27.41@sha256:6e2200dcb6a62b183cdcf7ed86e44713ba5ed8eeaf8de143319458898b6e8118"},{"image":"ghcr.io/github/gh-aw-firewall/cli-proxy:0.27.41","digest":"sha256:5338ee1b80ebf194436d9368deb376296c09a833ca4d80293dee249f94c7ff73","pinned_image":"ghcr.io/github/gh-aw-firewall/cli-proxy:0.27.41@sha256:5338ee1b80ebf194436d9368deb376296c09a833ca4d80293dee249f94c7ff73"},{"image":"ghcr.io/github/gh-aw-firewall/squid:0.27.41","digest":"sha256:cfadaba80ad857ecb6603727296b42d92a9e0ff2f956276c4a46bb35f6f1ac24","pinned_image":"ghcr.io/github/gh-aw-firewall/squid:0.27.41@sha256:cfadaba80ad857ecb6603727296b42d92a9e0ff2f956276c4a46bb35f6f1ac24"},{"image":"ghcr.io/github/gh-aw-mcpg:v0.4.5","digest":"sha256:7550c5132d007266b696d77218e8d1b01f29e6e55520875b2431ef4044df71c9","pinned_image":"ghcr.io/github/gh-aw-mcpg:v0.4.5@sha256:7550c5132d007266b696d77218e8d1b01f29e6e55520875b2431ef4044df71c9"},{"image":"ghcr.io/github/gh-aw-node","digest":"sha256:529d02eb970b1161aa25c593a9c3df57fdfad5a8add328cb3b6eccef66f3183b","pinned_image":"ghcr.io/github/gh-aw-node@sha256:529d02eb970b1161aa25c593a9c3df57fdfad5a8add328cb3b6eccef66f3183b"},{"image":"ghcr.io/github/github-mcp-server:v1.7.0","digest":"sha256:c491ffdf6f4c85cb5397021bc655edb8ab825c6f5f568e7597d77a1bd7c4d308","pinned_image":"ghcr.io/github/github-mcp-server:v1.7.0@sha256:c491ffdf6f4c85cb5397021bc655edb8ab825c6f5f568e7597d77a1bd7c4d308"}],"has_pull_request":true}
 # This file was automatically generated by gh-aw. DO NOT EDIT. To debug this workflow, load the skill at https://github.com/github/gh-aw/blob/main/debug.md
 #
@@ -72,9 +72,7 @@ jobs:
   activation:
     needs: pre_activation
     if: >
-      needs.pre_activation.outputs.activated == 'true' && ((github.event.pull_request.merged == true && !startsWith(github.event.pull_request.head.ref, 'signed/jsweep/') &&
-      !startsWith(github.event.pull_request.head.ref, 'copilot/')) && (github.event_name != 'pull_request' ||
-      github.event.pull_request.head.repo.id == github.repository_id))
+      needs.pre_activation.outputs.activated == 'true' && (github.event_name != 'pull_request' || github.event.pull_request.head.repo.id == github.repository_id)
     runs-on: ubuntu-slim
     permissions:
       actions: read
@@ -1567,10 +1565,7 @@ jobs:
             }
 
   pre_activation:
-    if: >
-      (github.event.pull_request.merged == true && !startsWith(github.event.pull_request.head.ref, 'signed/jsweep/') &&
-      !startsWith(github.event.pull_request.head.ref, 'copilot/')) && (github.event_name != 'pull_request' ||
-      github.event.pull_request.head.repo.id == github.repository_id)
+    if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.id == github.repository_id
     runs-on: ubuntu-slim
     permissions:
       contents: read
diff --git a/.github/workflows/pr-description-caveman.md b/.github/workflows/pr-description-caveman.md
index e9c99378526..906f264e55f 100644
--- a/.github/workflows/pr-description-caveman.md
+++ b/.github/workflows/pr-description-caveman.md
@@ -5,7 +5,6 @@ description: Rewrites a merged PR description with a structured, considered summ
 on:
   pull_request:
     types: [closed]
-if: github.event.pull_request.merged == true && !startsWith(github.event.pull_request.head.ref, 'signed/jsweep/') && !startsWith(github.event.pull_request.head.ref, 'copilot/')
 permissions:
   contents: read
   pull-requests: read
@@ -90,6 +89,15 @@ Write in a clear, considered tone. Be accurate, concise, and machine-friendly. A
 
 ## Your Task
 
+### Step 0 — Eligibility gate
+
+If any of the following are true:
+- the pull request was **not merged**
+- the pull request head branch starts with `signed/jsweep/`
+- the pull request head branch starts with `copilot/`
+
+Then call `noop` with a short reason and stop immediately.
+
 ### Step 1 — Check for meaningful changes
 
 ```bash
