fix(cheap): judge_cheap_verdict 全绿路 feedback 文案改准(「九门全绿,放行」取代误导的「未定位到未过门」;passed=True 时 feedback 本不回喂,仅日志/trace 用) (T7 fx4c-3 复跑发现)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
lili 2026-07-03 14:32:57 -07:00
parent 51144f1a3b
commit 714d0adebc

View File

@ -321,7 +321,10 @@ def judge_cheap_verdict(play_result: dict, *, game_id=None, staged_dir=None) ->
# 放行必须「顶层 pass 且有逐门 guards」:空 guards 无从证明九门真跑过,不放行(防空 verdict 假绿)。
passed = bool(v.get("pass")) and bool(guards)
failed_gates = [k for k, g in guards.items() if isinstance(g, dict) and g.get("pass") is False]
obj = build_cheap_feedback_obj(v, game_id=game_id, staged_dir=staged_dir) if not passed else None
if passed:
# 全绿:feedback 只作日志/trace 用(GateJudgment 契约:passed=True 时不回喂),给准确描述。
return GateJudgment(passed=True, failed_gates=failed_gates, feedback="九门全绿,放行。")
obj = build_cheap_feedback_obj(v, game_id=game_id, staged_dir=staged_dir)
if obj is not None:
feedback = _render_cheap_feedback(obj)
if staged_dir is not None: