From f5fab7ecded71ff8b2196d0eac84b525c5aa167e Mon Sep 17 00:00:00 2001 From: ZASENJC <1585463018@qq.com> Date: Fri, 16 Oct 2026 00:12:17 +0800 Subject: [PATCH] fix(release): preserve published releases after ambiguous API responses --- scripts/release/publish.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scripts/release/publish.sh b/scripts/release/publish.sh index 9f4663a..637dc07 100755 --- a/scripts/release/publish.sh +++ b/scripts/release/publish.sh @@ -10,7 +10,10 @@ DRAFT_CREATED=0 PUBLISHED=0 cleanup() { if [[ "$DRAFT_CREATED" == 1 && "$PUBLISHED" == 0 ]]; then - gh release delete "$RELEASE_TAG" --repo "$GITHUB_REPOSITORY" --yes || true + # A publish request may succeed despite a lost response. Remove drafts only. + if [[ "$(gh release view "$RELEASE_TAG" --repo "$GITHUB_REPOSITORY" --json isDraft --jq '.isDraft' 2>/dev/null || true)" == true ]]; then + gh release delete "$RELEASE_TAG" --repo "$GITHUB_REPOSITORY" --yes || true + fi fi } trap cleanup EXIT