[BUG]: cleanup-pr-previews never removes previews of deleted PRs
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 84/100
Rechercherichtung
Beginne mit ci/cleanup-pr-previews ungefähr bei den Zeilen 137–139 und führe den dokumentierten dry-run-Befehl aus dem Repository-Root aus. Reproduziere das 404-Verhalten von PR #2308 und überprüfe anschließend, dass die Statusbehandlung einen gelöschten PR von anderen API-Fehlern unterscheidet und nur den entsprechenden Preview-Ordner entfernt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Is this a duplicate?
- I confirmed there appear to be no duplicate issues for this bug and that I agree to the Code of Conduct
Type of Bug
Silent Failure
Component
Infrastructure
Describe the bug
ci/cleanup-pr-previews is supposed to remove preview folders for closed, merged, and deleted PRs. The deleted-PR case never matches.
For a PR that no longer exists, gh api ... --jq '.state' exits non-zero but still prints the 404 JSON body to stdout. The || echo "not_found" fallback is then appended to that output instead of replacing it:
PR_STATUS becomes {"message":"Not Found",...}not_found. That falls through to the *) branch, which logs UNKNOWN and keeps the folder.
This is happening now with docs/pr-preview/pr-2308 on gh-pages. #2308 no longer exists (both the pulls and issues endpoints return 404), and its preview has been there since 2026-07-07. The last scheduled run logged:
[UNKNOWN] PR #2308 has unexpected status: {"message":"Not Found","documentation_url":"https://docs.github.com/rest/pulls/pulls#get-a-pull-request","status":"404"}not_found
...
Folders to remove: 0
https://github.com/NVIDIA/cuda-python/actions/runs/36217108226
How to Reproduce
Run the script in dry-run mode from the repo root (read-only; it needs GH_TOKEN):
GH_TOKEN="$(gh auth token)" ci/cleanup-pr-previews --dry-run
Relevant output on current main:
[CHECK] Checking PR #2308...
[UNKNOWN] PR #2308 has unexpected status: {"message":"Not Found","documentation_url":"https://docs.github.com/rest/pulls/pulls#get-a-pull-request","status":"404"}not_found
...
Total PR preview folders: 25
Open PRs: 24
Folders to remove: 0
One of the 25 folders belongs to a PR that no longer exists, but nothing is marked for removal.
The failing call on its own:
PR_STATUS=$(gh api repos/NVIDIA/cuda-python/pulls/2308 \
--header "Accept: application/vnd.github+json" \
--jq '.state' 2>/dev/null || echo "not_found")
printf '[%s]\n' "$PR_STATUS"
With gh 2.97.0 this prints:
[{"message":"Not Found","documentation_url":"https://docs.github.com/rest/pulls/pulls#get-a-pull-request","status":"404"}not_found]
Expected behavior
A 404 from the pulls endpoint is classified as not_found, and the folder is removed. A fix should keep other failures (network errors, 5xx) out of the removal path, so a transient API error can't delete an open PR's preview.
#2914 also edits this script, though not these lines. I can send a small fix for the status check, before or after #2914 lands, whichever is easier to review.
- Vorherrschende Sprache
- Cython
- Sterne
- 3.4k
- Forks
- 329
- Ø Merge
- 1 T. 13 Std.
- Gemergte PRs (30 T.)
- 107
Entwicklungsumgebung
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus NVIDIA/cuda-python
-
bug cuda.core
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
NVIDIA/cuda-python#2886 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
[DOC]: cuda.core 1.1.1 note misstates program cache permissionsEvtl. vergeben @leofang hat das vor 4 Tagen übernommen. Offendocumentation P1
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
NVIDIA/cuda-python#2717 · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
[DOC]: `PinnedMemoryResource.allocate` documents no parametersEvtl. vergeben @Andy-Jost hat das vor 4 Tagen übernommen. Offencuda.core documentation P1
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 90/100
NVIDIA/cuda-python#2712 · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
NVIDIA/cuda-python#2646 · 1 Reaktion ·
Maintainer antworten meist innerhalb von 1 Tag
-
[FEA]: Support inheritance from BufferEvtl. vergeben @leofang hat das vor 4 Tagen übernommen. Offencuda.core triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
NVIDIA/cuda-python#2435 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in NVIDIA/cuda-python
Ähnliche Issues
-
bot-found bug priority: P3
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
madenvel/KalinkaPlayer#179 ·
-
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 94/100
makeplane/helm-charts#332 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug needs triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
microsoft/fabric-cicd#1141 · 1 Kommentar ·
-
[aw] Upgrade availableOffenagentic-workflows
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
githubnext/gh-aw-workshop#3933 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Remove CAAPFOffenkind/chore kind/cleanup needs-area
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
rancher/turtles#2848 · 3 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag