queue-drain-guard:pick 自己 150s 收手,逾時當成讀不到(inkstone/ISEP#33)

09-13 本機實量 Gitea 同一分鐘 curl 60s 逾時、整趟 pick --all 約 15 分鐘;
hooks.json 給本閘 180s,被砍掉=非阻擋錯誤=放行收工。實跑真 Gitea:150s 逾時 → exit 2、log 寫入。
測試 26/26。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-13 12:41:43 +08:00
parent ec9f28d9e8
commit 26aee6dffb
2 changed files with 22 additions and 3 deletions
+4
View File
@@ -90,6 +90,10 @@ run "讀不到第 2 次 → 擋" 2 s9 worker.jsonl
run "★ 讀不到第 3 次 → 放行並留痕" 0 s9 worker.jsonl
check "log 有 unreachable" "grep -q 'unreachable' '$TMP/state-s9/queue-drain-guard.log'"
printf '0' > "$TMP/rc"; printf '%s' "$TICKET" > "$TMP/out"
ISEP_DRAIN_PICK_CMD="sleep 5; sh $TMP/pick.sh" ISEP_DRAIN_PICK_TIMEOUT=1 run "★ pick 超過時限(Gitea 慢)→ 當成讀不到而擋,不是被砍掉後放行" 2 s10 worker.jsonl
check "逾時那次訊息是「讀不到 ≠ 沒票」" "grep -q '讀不到' '$TMP/stderr'"
echo
echo "── ④ 真的 pick(不帶假指令)接得上 ──"
unset ISEP_DRAIN_PICK_CMD