From d034970c648d45ade537aca3d5332a06cd475c15 Mon Sep 17 00:00:00 2001 From: DKChan <524912269@qq.com> Date: Sun, 8 Nov 2026 05:34:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D(CI=E7=BA=A2=C2=B7=E8=BF=AD?= =?UTF-8?q?=E4=BB=A356=E8=BF=BD=E7=BB=BF=E4=BA=8C):=20=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E6=B5=8B=E8=AF=9538=E8=A1=8C=E8=84=9A=E6=9C=AC=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E6=A0=B9=E5=9B=A0=3D=E5=8D=A11=E9=80=80=E5=BD=B9row?= =?UTF-8?q?=5Fpacer.log=5Fview=E5=8F=A5=E6=9F=84=E4=BD=86=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E5=AE=BF=E4=B8=BB=E5=8F=A5=E6=9F=84=E5=AD=97=E5=85=B8?= =?UTF-8?q?=E6=9C=AA=E9=9A=8F=E4=BB=A3=E2=80=94=E2=80=94=5Fface=5Fsnapshot?= =?UTF-8?q?:340=20rp.log=5Fview=E6=AF=8F=E9=98=B6=E6=AE=B5=E6=96=AD?= =?UTF-8?q?=E8=A8=80=E7=82=B9=E7=82=B8(19=E9=98=B6=E6=AE=B5),=E5=AD=97?= =?UTF-8?q?=E5=85=B8=E6=B1=82=E5=80=BC=E4=B8=AD=E6=96=AD=E8=87=B4=5Fstage?= =?UTF-8?q?=5Ffaces:355=E5=AF=B9=E6=AE=8B=E7=BC=BA=E5=BF=AB=E7=85=A7?= =?UTF-8?q?=E5=8F=96bonus=5Fmeta=E5=86=8D=E7=82=B8=E4=B8=94=E8=AF=A5?= =?UTF-8?q?=E5=87=BD=E6=95=B0=E5=89=A9=E4=BD=99=E5=AD=98=E6=B4=BB=E9=9D=A2?= =?UTF-8?q?=E6=96=AD=E8=A8=80=E8=A2=AB=E9=9D=99=E9=BB=98=E8=B7=B3=E8=BF=87?= =?UTF-8?q?;=20Mac=20SSH=E5=A4=8D=E7=8E=B0+Windows=E6=9C=AC=E5=9C=B0?= =?UTF-8?q?=E5=90=8C=E7=BA=A2=E5=A4=8D=E7=8E=B0=E5=8F=8C=E6=BA=90=E7=A1=AE?= =?UTF-8?q?=E8=AF=81(godot=E9=80=80=E5=87=BA=E7=A0=81=E5=AE=9E=E4=B8=BA0?= =?UTF-8?q?=E8=BF=9B=E7=A8=8B=E6=97=A0=E5=B4=A9=E6=BA=83,=E7=BA=A2?= =?UTF-8?q?=E7=9A=84=E6=98=AF=E8=84=9A=E6=9C=AC=E9=94=99=E8=AF=AF=E6=89=AB?= =?UTF-8?q?=E6=8F=8F=E9=97=B8=E2=80=94=E2=80=94=E6=AD=A4=E5=89=8DMac?= =?UTF-8?q?=E9=80=80=E5=87=BA=E6=AE=B5=E5=B4=A9=E6=BA=83=E5=81=87=E8=AE=BE?= =?UTF-8?q?=E4=BD=9C=E5=BA=9F;Windows=E9=80=80=E5=87=BA0=E7=B3=BB=E8=BF=87?= =?UTF-8?q?=E6=97=B6=E8=AF=81=E6=8D=AE,=E8=BF=AD=E4=BB=A356=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E6=9C=AC=E5=9C=B0=E4=BB=8E=E6=9C=AA=E5=AE=9E=E8=B7=91?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E6=B5=8B=E8=AF=95);=20=E4=BF=AE=E5=A4=8D:=20?= =?UTF-8?q?rp=5Flog=E5=8F=A5=E6=9F=84=E4=B8=8E=E5=AD=98=E6=B4=BB=E9=94=AE?= =?UTF-8?q?=E9=9A=8F=E4=BB=A3=E6=91=98=E9=99=A4(=E6=8D=A2=E4=BB=A3?= =?UTF-8?q?=E5=90=8C=E7=94=9F=E6=AD=BB)=E2=80=94=E2=80=9419=E4=B8=AA?= =?UTF-8?q?=E9=98=B6=E6=AE=B5=E6=96=AD=E8=A8=80=E9=9D=A2=E5=A4=8D=E6=B4=BB?= =?UTF-8?q?,=E6=91=98=E8=A6=8157=E2=86=9276=E9=A1=B9(+19=E4=B8=8E=E6=AD=BB?= =?UTF-8?q?=E4=BA=A1=E8=A7=A6=E5=8F=91=E7=82=B9=E6=95=B0=E4=B8=A5=E4=B8=9D?= =?UTF-8?q?=E5=90=88=E7=BC=9D);=20=E9=9A=8F=E6=89=B9=E9=97=B8=E6=9C=BAgate?= =?UTF-8?q?()=E5=A4=B1=E8=B4=A5=E5=9B=9E=E6=98=BE=E8=BF=87=E6=BB=A4?= =?UTF-8?q?=E5=99=A8=E8=A1=A5=E3=80=8C^=20=20-=20=E3=80=8D=E6=B8=85?= =?UTF-8?q?=E5=8D=95=E8=A1=8C+=E6=97=A5=E5=BF=97=E5=8E=9F=E6=96=87?= =?UTF-8?q?=E5=B0=BE=E9=83=A812=E8=A1=8C(run135=E5=AE=9E=E6=8D=AE:run=5F*?= =?UTF-8?q?=E5=8C=85=E8=A3=85=E5=99=A8=E5=A4=B1=E8=B4=A5=E5=8E=9F=E5=9B=A0?= =?UTF-8?q?bullet=E6=95=B4=E7=BB=84=E8=A2=AB=E5=90=9E,=E7=BA=A2=E5=9B=A0?= =?UTF-8?q?=E6=BB=9E=E7=95=99runner=E4=BE=A7=E4=B8=8D=E5=8F=AF=E8=AF=8A?= =?UTF-8?q?=E6=96=AD);=20=E8=AF=BB=E6=95=B0:=20=E7=B3=BB=E7=BB=9F=E6=B5=8B?= =?UTF-8?q?=E8=AF=9576=E9=A1=B90=E5=A4=B1=E8=B4=A5+=E9=9B=B6=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=E9=94=99=E8=AF=AF+exit0=E4=B8=89=E9=97=B8=E5=85=A8?= =?UTF-8?q?=E8=BF=87(Windows=E6=9C=AC=E5=9C=B0),=E9=97=B8=E5=A3=B3bash=20-?= =?UTF-8?q?n=E8=BF=87,=E8=BF=87=E6=BB=A4=E9=9D=A2=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E6=8A=BD=E6=A3=80=E8=BF=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- game/tests/system_test.gd | 4 ++-- tools/run_all_gates.sh | 8 ++++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/game/tests/system_test.gd b/game/tests/system_test.gd index 2ca2e06c..2727ce49 100644 --- a/game/tests/system_test.gd +++ b/game/tests/system_test.gd @@ -337,7 +337,7 @@ func _face_snapshot(main: Node) -> Dictionary: "mf_inter": mf.inter_visible_get.call(), "mf_settlement": mf.settlement_get.call(), "mf_rows_empty": mf.rows_empty_get.call(), - "rp_log": rp.log_view, "rp_stage": rp.stage, "rp_board_zone": rp.board_zone, + "rp_stage": rp.stage, "rp_board_zone": rp.board_zone, "rp_fx": rp.settlement_fx, "rp_board": rp.board_view, "rp_refresh": rp.refresh_request, "rp_pump": rp.pump_ended, "rs_adventure": main.run_scope.adventure, "rs_runner": main.run_scope.runner, @@ -351,7 +351,7 @@ func _stage_faces(main: Node, tag: String, adv: String, run: String, set: String # 判据出处: design/engineering/test-conventions.md:56 (判定上报通道——验证函数组) var snap := _face_snapshot(main) var bad := "" - for k in ["bonus_meta", "bonus_save", "camp_meta", "camp_save", "rp_log", "rp_stage", "rp_board_zone", "rp_fx", "rp_board"]: + for k in ["bonus_meta", "bonus_save", "camp_meta", "camp_save", "rp_stage", "rp_board_zone", "rp_fx", "rp_board"]: if not is_instance_valid(snap[k]): bad += " %s=失效" % k for k in ["rp_refresh", "rp_pump"]: diff --git a/tools/run_all_gates.sh b/tools/run_all_gates.sh index 60dc692f..a19f18d5 100755 --- a/tools/run_all_gates.sh +++ b/tools/run_all_gates.sh @@ -335,9 +335,13 @@ gate() { # gate <名称> <日志名> <命令...> "$@" >"$STAMP_DIR/$log" 2>&1 local rc=$? # 失败时把关键行回显到终端(红必须看得见——明细行形态 [Rx]/[Sxx]/违规/存量 同回显, - # 远端 runner 只回传终端日志,折叠过窄=红因滞留 runner 侧不可诊断) + # 远端 runner 只回传终端日志,折叠过窄=红因滞留 runner 侧不可诊断)。 + # run_* 包装器的失败原因清单行(「 - 退出码 = …」「 - 脚本错误标记命中…」)不含下列 + # 关键字,会整组被吞——清单行一并入过滤面,另附日志原文尾部兜底。 if [ $rc -ne 0 ]; then - grep -E "FAIL|红|Error|error|违规|存量|^\[|\] FAIL" "$STAMP_DIR/$log" | tail -60 | sed 's/^/ | /' + grep -E "FAIL|红|Error|error|违规|存量|^\[|^ - |\] FAIL" "$STAMP_DIR/$log" | tail -60 | sed 's/^/ | /' + echo " | ── 日志原文尾部 $STAMP_DIR/$log ──" + tail -12 "$STAMP_DIR/$log" | sed 's/^/ | /' fi NAMES+=("$name"); EXITS+=("$rc"); LOGS+=("$log") return 0