From ca24d8e70fe8d28322f791095b6ca3e9bc934c56 Mon Sep 17 00:00:00 2001 From: Jason Woltje Date: Mon, 10 Aug 2026 14:36:01 -0500 Subject: [PATCH] fix(ci): separate push queue clearance from merge readiness --- .../framework/tools/git/ci-queue-wait.sh | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/packages/mosaic/framework/tools/git/ci-queue-wait.sh b/packages/mosaic/framework/tools/git/ci-queue-wait.sh index d4f49b87..f38be51e 100755 --- a/packages/mosaic/framework/tools/git/ci-queue-wait.sh +++ b/packages/mosaic/framework/tools/git/ci-queue-wait.sh @@ -465,12 +465,24 @@ while true; do no-status) if [[ "$REQUIRE_STATUS" -eq 1 ]]; then echo "Error: ASSERTED_NOT_READY state=no-status; --require-status was set for ${BRANCH}." >&2 - else - echo "Error: ASSERTED_NOT_READY state=no-status purpose=${PURPOSE} branch=${BRANCH}." >&2 + exit 3 fi + if [[ "$PURPOSE" == "push" ]]; then + echo "[ci-queue-wait] queue-clear state=no-status purpose=push branch=${BRANCH}; no queued or running CI." + exit 0 + fi + echo "Error: ASSERTED_NOT_READY state=no-status purpose=${PURPOSE} branch=${BRANCH}." >&2 exit 3 ;; - terminal-failure|malformed|unknown) + terminal-failure) + if [[ "$PURPOSE" == "push" ]]; then + echo "[ci-queue-wait] queue-clear state=terminal-failure purpose=push branch=${BRANCH}; no queued or running CI." + exit 0 + fi + echo "Error: ASSERTED_NOT_READY state=terminal-failure purpose=${PURPOSE} branch=${BRANCH}." >&2 + exit 3 + ;; + malformed|unknown) echo "Error: ASSERTED_NOT_READY state=${STATE} purpose=${PURPOSE} branch=${BRANCH}." >&2 exit 3 ;;