工程(CI可观测性·fix-ci-obs): 远端红因诊断三件——gate()红态回显加宽(明细行[Rx]/[Sxx]/违规/存量形态入grep,tail 12→60——static_scan明细行不匹配旧词表致红因滞留runner)+gate_unit红态改关键行grep(套件FAIL清单/超时/ABORT/汇总,tail 12→80)+run_all失败汇总补打印failed_paths与timed_out_paths清单(原先只有计数无名单); 动机=run14的17套件崩死与远端S9/S10/S13违例明细全部滞留runner侧不可诊断,远端回传唯一通道=终端日志回显; 本地77套面单套验证+S9归零+gdstyle ok

This commit is contained in:
DKChan committed 2026-11-03 08:13:23 +08:00
1 parent 20a4b3d5bc
commit 574f202405
2 files changed
+10 -3

No files matched your search

+4
View File
@@ -149,6 +149,10 @@ func _init() -> void:
return
if failures > 0:
push_error("[run_all] %d 个套件失败" % failures)
for fp in failed_paths:
push_error("[run_all] 失败套件: %s" % fp)
for tp in timed_out_paths:
push_error("[run_all] 超时套件: %s" % tp)
quit(1)
return
var tag := ",filtered" if filtered else ""
+6 -3
View File
@@ -322,9 +322,10 @@ gate() { # gate <名称> <日志名> <命令...>
echo "════════════════════════════════════════════"
"$@" >"$STAMP_DIR/$log" 2>&1
local rc=$?
# 失败时把关键行回显到终端(红必须看得见)
# 失败时把关键行回显到终端(红必须看得见——明细行形态 [Rx]/[Sxx]/违规/存量 同回显,
# 远端 runner 只回传终端日志,折叠过窄=红因滞留 runner 侧不可诊断)
if [ $rc -ne 0 ]; then
grep -E "FAIL|红|Error|error" "$STAMP_DIR/$log" | tail -12 | sed 's/^/ | /'
grep -E "FAIL|红|Error|error|违规|存量|^\[|\] FAIL" "$STAMP_DIR/$log" | tail -60 | sed 's/^/ | /'
fi
NAMES+=("$name"); EXITS+=("$rc"); LOGS+=("$log")
return 0
@@ -388,7 +389,9 @@ gate_unit() { # run_all 是 --script 模式,退出码为唯一判据;分
rc=1
tail -12 "$STAMP_DIR/unit.log" | sed 's/^/ | /'
fi
[ $rc -ne 0 ] && tail -12 "$STAMP_DIR/unit.log" | sed 's/^/ | /'
if [ $rc -ne 0 ]; then
grep -E "FAIL res://|超时|ABORT|个套件失败|套件未跑|SCRIPT ERROR|Parse Error" "$STAMP_DIR/unit.log" | tail -80 | sed 's/^/ | /'
fi
NAMES+=("$name"); EXITS+=("$rc"); LOGS+=("unit.log")
return 0
}