autopilot-code 0.2.2 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -431,16 +431,65 @@ I'm monitoring the CI checks and will auto-merge once they pass. This may take a
|
|
|
431
431
|
elif [[ "$MERGE_STATE_STATUS" == "CLEAN" || "$MERGE_STATE_STATUS" == "HAS_HOOKS" ]]; then
|
|
432
432
|
# Check statusCheckRollup - if null/empty, no checks configured, so PASSED
|
|
433
433
|
if command -v jq >/dev/null 2>&1; then
|
|
434
|
-
|
|
434
|
+
# Debug: log the statusCheckRollup value
|
|
435
|
+
SCR_VALUE=$(echo "$PR_STATUS_JSON" | jq -r '.statusCheckRollup')
|
|
436
|
+
echo "[run_opencode_issue.sh] Debug: statusCheckRollup value = $SCR_VALUE"
|
|
437
|
+
|
|
438
|
+
# Check if statusCheckRollup is null or empty array
|
|
439
|
+
SCR_IS_NULL=$(echo "$PR_STATUS_JSON" | jq -r '.statusCheckRollup == null')
|
|
440
|
+
SCR_LENGTH=$(echo "$PR_STATUS_JSON" | jq -r '.statusCheckRollup | length // 0')
|
|
441
|
+
echo "[run_opencode_issue.sh] Debug: statusCheckRollup is_null=$SCR_IS_NULL, length=$SCR_LENGTH"
|
|
442
|
+
|
|
443
|
+
if [[ "$SCR_IS_NULL" == "true" ]] || [[ "$SCR_LENGTH" == "0" ]]; then
|
|
444
|
+
CHECK_STATUS="PASSED"
|
|
445
|
+
echo "[run_opencode_issue.sh] No CI checks configured (statusCheckRollup is null/empty)"
|
|
446
|
+
else
|
|
447
|
+
# Has checks - determine status
|
|
448
|
+
CHECK_STATUS=$(echo "$PR_STATUS_JSON" | jq -r '.statusCheckRollup | map(.conclusion) | if any(. == "FAILURE") then "FAILED" elif any(. == "PENDING") or any(. == "QUEUED") then "PENDING" else "PASSED" end')
|
|
449
|
+
echo "[run_opencode_issue.sh] CI checks found, status = $CHECK_STATUS"
|
|
450
|
+
fi
|
|
435
451
|
else
|
|
452
|
+
# Python fallback
|
|
453
|
+
SCR_VALUE=$(python3 -c 'import json,sys; data=json.load(sys.stdin); print(data.get("statusCheckRollup", "null"))' <<<"$PR_STATUS_JSON")
|
|
454
|
+
echo "[run_opencode_issue.sh] Debug: statusCheckRollup value = $SCR_VALUE"
|
|
455
|
+
|
|
436
456
|
CHECK_STATUS=$(python3 -c 'import json,sys; data=json.load(sys.stdin); scr=data.get("statusCheckRollup"); print("PASSED" if not scr or len(scr)==0 else "FAILED" if any(c.get("conclusion")=="FAILURE" for c in scr) else "PENDING" if any(c.get("conclusion") in ["PENDING","QUEUED"] for c in scr) else "PASSED")' <<<"$PR_STATUS_JSON")
|
|
457
|
+
|
|
458
|
+
if [[ "$SCR_VALUE" == "null" ]] || [[ "$SCR_VALUE" == "[]" ]]; then
|
|
459
|
+
echo "[run_opencode_issue.sh] No CI checks configured (statusCheckRollup is null/empty)"
|
|
460
|
+
fi
|
|
437
461
|
fi
|
|
438
462
|
elif [[ "$MERGE_STATE_STATUS" == "BLOCKED" ]]; then
|
|
439
463
|
# If mergeStateStatus is BLOCKED, check if it's due to failed checks
|
|
464
|
+
echo "[run_opencode_issue.sh] mergeStateStatus is BLOCKED, checking if due to failed checks"
|
|
440
465
|
if command -v jq >/dev/null 2>&1; then
|
|
441
|
-
|
|
466
|
+
# Debug: log the statusCheckRollup value
|
|
467
|
+
SCR_VALUE=$(echo "$PR_STATUS_JSON" | jq -r '.statusCheckRollup')
|
|
468
|
+
echo "[run_opencode_issue.sh] Debug: statusCheckRollup value = $SCR_VALUE"
|
|
469
|
+
|
|
470
|
+
# Check if statusCheckRollup is null or empty array
|
|
471
|
+
SCR_IS_NULL=$(echo "$PR_STATUS_JSON" | jq -r '.statusCheckRollup == null')
|
|
472
|
+
SCR_LENGTH=$(echo "$PR_STATUS_JSON" | jq -r '.statusCheckRollup | length // 0')
|
|
473
|
+
echo "[run_opencode_issue.sh] Debug: statusCheckRollup is_null=$SCR_IS_NULL, length=$SCR_LENGTH"
|
|
474
|
+
|
|
475
|
+
if [[ "$SCR_IS_NULL" == "true" ]] || [[ "$SCR_LENGTH" == "0" ]]; then
|
|
476
|
+
CHECK_STATUS="FAILED"
|
|
477
|
+
echo "[run_opencode_issue.sh] No CI checks but mergeStateStatus is BLOCKED - other blocking issue"
|
|
478
|
+
else
|
|
479
|
+
# Has checks - determine status
|
|
480
|
+
CHECK_STATUS=$(echo "$PR_STATUS_JSON" | jq -r '.statusCheckRollup | map(.conclusion) | if any(. == "FAILURE") then "FAILED" elif any(. == "PENDING") or any(. == "QUEUED") then "PENDING" else "PASSED" end')
|
|
481
|
+
echo "[run_opencode_issue.sh] CI checks found, status = $CHECK_STATUS"
|
|
482
|
+
fi
|
|
442
483
|
else
|
|
484
|
+
# Python fallback
|
|
485
|
+
SCR_VALUE=$(python3 -c 'import json,sys; data=json.load(sys.stdin); print(data.get("statusCheckRollup", "null"))' <<<"$PR_STATUS_JSON")
|
|
486
|
+
echo "[run_opencode_issue.sh] Debug: statusCheckRollup value = $SCR_VALUE"
|
|
487
|
+
|
|
443
488
|
CHECK_STATUS=$(python3 -c 'import json,sys; data=json.load(sys.stdin); scr=data.get("statusCheckRollup"); print("PASSED" if not scr or len(scr)==0 else "FAILED" if any(c.get("conclusion")=="FAILURE" for c in scr) else "PENDING" if any(c.get("conclusion") in ["PENDING","QUEUED"] for c in scr) else "PASSED")' <<<"$PR_STATUS_JSON")
|
|
489
|
+
|
|
490
|
+
if [[ "$SCR_VALUE" == "null" ]] || [[ "$SCR_VALUE" == "[]" ]]; then
|
|
491
|
+
echo "[run_opencode_issue.sh] No CI checks but mergeStateStatus is BLOCKED - other blocking issue"
|
|
492
|
+
fi
|
|
444
493
|
fi
|
|
445
494
|
else
|
|
446
495
|
# Other states (DRAFT, DIRTY, BEHIND) - mark as FAILED to exit
|