[BUG]: cleanup-pr-previews never removes previews of deleted PRs
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 84/100
Direzione di ricerca
Inizia con ci/cleanup-pr-previews intorno alle righe 137-139 ed esegui il comando dry-run documentato dalla radice del repository. Riproduci il comportamento 404 della PR #2308, quindi verifica che la gestione dello stato distingua una PR eliminata dagli altri errori dell'API e rimuova solo la cartella di preview appropriata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
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.
- Lingua principale
- Cython
- Stelle
- 3.4k
- Fork
- 329
- Merge medio
- 1g 13h
- PR unite (30g)
- 107
Preparare l'ambiente
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di NVIDIA/cuda-python
-
bug cuda.core
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
NVIDIA/cuda-python#2886 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
[DOC]: cuda.core 1.1.1 note misstates program cache permissionsForse già presa @leofang l’ha presa 4 giorni fa. Apertadocumentation P1
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
NVIDIA/cuda-python#2717 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
[DOC]: `PinnedMemoryResource.allocate` documents no parametersForse già presa @Andy-Jost l’ha presa 4 giorni fa. Apertacuda.core documentation P1
Difficoltà 1/5 1-3 ore Idoneità per principianti 90/100
NVIDIA/cuda-python#2712 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
NVIDIA/cuda-python#2646 · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
[FEA]: Support inheritance from BufferForse già presa @leofang l’ha presa 4 giorni fa. Apertacuda.core triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
NVIDIA/cuda-python#2435 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di NVIDIA/cuda-python
Issue simili
-
agentic-workflows
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
microsoft/ebpf-for-windows#5604 ·
I maintainer di solito rispondono entro 3 giorni
-
Theme: Bots Type: Bug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 84/100
internetarchive/openlibrary#13743 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
blinklabs-io/actions#138 ·
I maintainer di solito rispondono entro 1 giorno
-
.Needs Triage .Run Repro Bot Priority:P2 Type:Bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
metabase/metabase#83153 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno