diff --git a/game-cloud/game-module-aigc/game-module-aigc-server/src/main/java/com/wanxiang/huijing/game/module/aigc/saa/SaaStudioNodes.java b/game-cloud/game-module-aigc/game-module-aigc-server/src/main/java/com/wanxiang/huijing/game/module/aigc/saa/SaaStudioNodes.java index 169b117e..519281cd 100644 --- a/game-cloud/game-module-aigc/game-module-aigc-server/src/main/java/com/wanxiang/huijing/game/module/aigc/saa/SaaStudioNodes.java +++ b/game-cloud/game-module-aigc/game-module-aigc-server/src/main/java/com/wanxiang/huijing/game/module/aigc/saa/SaaStudioNodes.java @@ -333,6 +333,9 @@ final class SaaStudioNodes { // 救场阶梯控制面初值(§6.3):失败计数归零、模型档起 stage1(escalate 命中阈值才升 stage2)。 out.put(K_FAIL_COUNT, 0); out.put(K_MODEL_TIER, "stage1"); + // 6c6g 评审 P1:清 stale K_STATUS——checkpoint/saver 跨 run 复用 state 时,上一轮 giveup 写的 K_STATUS="failed" + // 会残留;下次 modify 进来 modifyRouter 首检 K_STATUS 会误判失败、把 gamedef 确定性点改错误路由到 END。render 起手归零。 + out.put(K_STATUS, ""); // modify 入参透传(create 路缺省空串;renderRouter 据 modifyMode 分流,§6.2)。 out.put(K_MODIFY_MODE, s.value(K_MODIFY_MODE, String.class).orElse("")); out.put(K_BASE_VERSION_ID, s.value(K_BASE_VERSION_ID, String.class).orElse("")); @@ -453,6 +456,8 @@ final class SaaStudioNodes { String pname = selectGenerateModelName(role, isStage2 ? "stage2" : "stage1", gm.codeName(), gm.fixName(), gm.codeStage2Name(), gm.fixStage2Name()); // U4 回退档(同 role;主模型耗尽 180s×3 重试后再试一档,治超时/返空/截断;接现救场体系不另起限次)。 + // 6c6g 评审 P2(有意为之·保可用降级):stage2 升档后 primary=强档,但 fallback 仍取廉价档(codeFallback=MiniMax-M3)—— + // 这是【可用性优先于本次升档边际质量】的刻意取舍:强档也超时时仍要出包(有结果好过整 job 崩),而非追求"回退档也必须强档"。 ChatModel fallback = isFix ? gm.fixFallback() : gm.codeFallback(); String fname = isFix ? gm.fixFallbackName() : gm.codeFallbackName(); int attemptNo = ((Number) s.value(K_REPAIR_COUNT, 0)).intValue(); // 当前修复轮序(首轮=0)。