From 668fe1cd0686a08d761d0283725f739b8d5aedb8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=20=E9=A7=BF=E7=94=AB=20=28Shunsuke=20Hayashi=29?= Date: Wed, 15 Apr 2026 09:30:00 +0900 Subject: [PATCH] fix: ingress done/fail silently succeed on non-existent queue ID _ingress_update_status returns 1 when queue file not found, but _ingress_done and _ingress_fail were ignoring the return code and printing success messages anyway. Now both commands propagate the error with a clear message: "Queue item not found: " Co-Authored-By: Claude Sonnet 4.6 --- lib/ingress.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/ingress.sh b/lib/ingress.sh index bfb505e..4bffe63 100644 --- a/lib/ingress.sh +++ b/lib/ingress.sh @@ -517,7 +517,8 @@ _ingress_done() { [[ -z "${queue_id}" ]] && { echo "Usage: garc ingress done --queue-id [--note ]"; return 1; } - _ingress_update_status "${queue_id}" "done" "${note}" + _ingress_update_status "${queue_id}" "done" "${note}" \ + || { echo "Queue item not found: ${queue_id}" >&2; return 1; } echo "✅ Queue item ${queue_id} — done." [[ -n "${note}" ]] && echo " Note: ${note}" @@ -544,7 +545,8 @@ _ingress_fail() { [[ -z "${queue_id}" ]] && { echo "Usage: garc ingress fail --queue-id [--note ]"; return 1; } - _ingress_update_status "${queue_id}" "failed" "${note}" + _ingress_update_status "${queue_id}" "failed" "${note}" \ + || { echo "Queue item not found: ${queue_id}" >&2; return 1; } echo "❌ Queue item ${queue_id} — failed." [[ -n "${note}" ]] && echo " Reason: ${note}" }