From d4f16aabffad8ef4c3397c17bb604fcb5cc4b4b0 Mon Sep 17 00:00:00 2001 From: zizi Date: Tue, 16 Jun 2026 21:04:22 +0800 Subject: [PATCH] =?UTF-8?q?feat(wg1-groupc):=20=E4=B9=9D=E9=97=A8=20harnes?= =?UTF-8?q?s=20=E5=8A=A0=E9=A6=96=E5=B1=80=E4=BD=93=E9=AA=8C=E9=97=A8(?= =?UTF-8?q?=E5=93=81=E7=B1=BB=E5=8C=96=C2=B7additive=20=E6=B4=BE=E7=94=9F?= =?UTF-8?q?=E8=B6=85=E9=9B=86)=E2=80=94=E2=80=943=20=E6=96=AD=E8=A8=80?= =?UTF-8?q?=E4=B8=89=E6=AC=BE=E7=9C=9F=E7=8E=A9=E5=85=A8=E7=BB=BF+skill=20?= =?UTF-8?q?=E7=B1=BB=E9=A6=96=E5=8F=8D=E9=A6=88=20A/B=20=E7=9C=9F=E5=88=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 组C 严谨首反馈:A/B 无输入对照,skill 类升级真判(超上一档诚实化 SKIP): - 上一档(P1-1)把动画自走类(skill/action,如 breakout)首反馈标 SKIP,因「帧哈希 changed」对动球 是重言式(球每帧本就在动)非输入因果。本档落地 A/B 无输入对照,把 SKIP 升级为真判—— 动画自走类的输入因果靠「有输入 vs 无输入的差异」鉴别,而非裸帧变。 - 复用 G 门 A/B 范式:三趟 fresh 实例同 seed(缺省 0x1234abcd)+LittleJS 固定步推进到【同一绝对帧】比对: A=无输入自走基线 / Ap=无输入纯净探针 / B=派一招首招。real 引擎自由运行(host 不掌 RAF/无法暂停回退), 三趟落帧有 ≤数帧抖动→动球自走位置略差,故【不】用裸帧哈希等值(过严必假 SKIP),分阶梯判: [0] 控制体维度(input-controllable,最干净免动球抖动):spec.controlCheck.paddlePath(如 breakout paddle.x)——A 趟控制体停默认位、B 趟点远端边连派 tapsPerTarget 拍被移开;|ctrlB-ctrlA|>moveMin =真输入因果 true。这是 prompt「只比 input-controllable 维度」之意。 [1] 否则 state 级因果(remaining/score/moves/phase A vs B 变)=次强信号,直接 true; [2] 否则像素信号/噪声(noise=diff(A,Ap)基线抖动地板,signal=diff(A,B));signal 显著超 noise→true(兜底); [3] noise 超顶=非确定性(unseeded random/wall-clock)→不可净判 SKIP(血统债,不假判); [4] signal≈noise 且无控制体维度→SKIP(动球抖动可能盖过信号,不假 FAIL)。 - 必须串行跑三趟:headless Chrome 对后台 target rAF 节流/冻结,并发开三个只前台跑(实测 A/Ap frame=-1、 B=2484 全程跑完=对照失效);串行下每趟=当前唯一活动 target 满速,确定性保同绝对帧自走态可比。 - 纪律:路A 零改契约/prompt/play-spec,只动 play.cdp.cjs(additive,advanceToFrame 加 pollMs 缺省 100 向后兼容, G 门逐字不变);静态盘类(placement/avoidance)走原单趟口径不动;首局门 FAIL 不阻断九门;warm-only 标注保留。 - 重验(mini-desktop Chrome/CDP):breakout 首反馈 假 SKIP→真判 (控制体 paddle.x delta=145,A=195/B=50, control-body-moved,净判=true);tictactoe/saolei 首反馈仍真(单趟 state变=true);三款九门零回归 (逐门 base==verify,均 A-I 全 true,base 跑于 pristine ee1b697e);firstPlay.pass 全 true。 - 诚实:breakout A/B 净判靠控制体维度(paddle.x),非裸全帧像素——实测裸全帧 noise≈signal(球每帧动+两趟落帧 抖动污染),故有控制体路径优先取该维度免污染;无控制体路径的 skill 类退信号/噪声兜底,signal≈noise 即诚实 SKIP。 P2-1 warm-only 局限标注保留:playableMs=预热后 warm 稳态,不覆盖 bundle 首加载退化;warmupMs 记冷启; 真机 first-load 阈值校准留 staging。本门 v0 守得住卡死/装载失败退化,守不住大 bundle/慢首加载退化。 Co-Authored-By: Claude Opus 4.8 (1M context) --- ...2026-06-16-W-G1开闸验收门-组C-execution.md | 107 +++++ .../_wg1-gen/_shared/index.template.html | 6 + .../games/_wg1-gen/_shared/play.cdp.cjs | 371 +++++++++++++++++- .../_wg1-gen/breakout/evidence/after-play.png | Bin 28579 -> 27602 bytes .../breakout/evidence/first-paint.png | Bin 17390 -> 17524 bytes .../_wg1-gen/breakout/evidence/verdict.json | 111 ++++-- .../games/_wg1-gen/breakout/index.html | 6 + .../_wg1-gen/saolei/evidence/after-play.png | Bin 36214 -> 34861 bytes .../_wg1-gen/saolei/evidence/first-paint.png | Bin 23073 -> 22130 bytes .../_wg1-gen/saolei/evidence/verdict.json | 49 ++- game-runtime/games/_wg1-gen/saolei/index.html | 6 + .../tictactoe/evidence/after-play.png | Bin 21403 -> 21264 bytes .../tictactoe/evidence/first-paint.png | Bin 11962 -> 11625 bytes .../_wg1-gen/tictactoe/evidence/verdict.json | 53 ++- .../games/_wg1-gen/tictactoe/index.html | 6 + 15 files changed, 669 insertions(+), 46 deletions(-) create mode 100644 docs/agent-specs/2026-06-16-W-G1开闸验收门-组C-execution.md diff --git a/docs/agent-specs/2026-06-16-W-G1开闸验收门-组C-execution.md b/docs/agent-specs/2026-06-16-W-G1开闸验收门-组C-execution.md new file mode 100644 index 00000000..8d824e55 --- /dev/null +++ b/docs/agent-specs/2026-06-16-W-G1开闸验收门-组C-execution.md @@ -0,0 +1,107 @@ +# W-G1 开闸验收门 · 组C(首局体验子门 · 品类化) · execution 版 + +> **状态**:execution 版 · 2026-06-16 · 供实现(harness-only,低风险,组C 比组A 轻一个量级)。 +> **底稿**:`docs/agent-specs/2026-06-16-W-G1开闸验收门-review.md` §3 组C;opus 接地 gap-map(本会话,file:line 已核实)。 +> **流程**:组C 低风险(只动 harness/gatespec、零改后端契约/DB/prompt) → streamline:跳 spec 双评审,直接 实现 → 1 轮 opus 审 → 创始人 push nod。 +> **纪律**:**路A 零改契约/prompt**;全部落 `play.cdp.cjs` 一个文件 + 3 款 play-spec;复用 H 门 + 现成 3 款 dispatch 面,**零新生成**。 + +--- + +## ① 目标与范围边界 + +**目标**:在九门 harness 加"**首局体验门**"(品类化),验主干口号"陌生人 10 秒觉得能玩"——3 条断言:**可玩≤2s / 首反馈即时 / 60s 内品类核心反馈闭环可达**。 + +**v0 = 路A(零改生成侧)**:harness 从**现有 gatespec 的 `driver` 家族反推品类**——`tap-targets`(无 safeOnly)→放置族 / `tap-targets`+`safeOnly`→规避族 / `paddle-intercept` 等→技巧/action 族 / `none`→退化。首局门 = **H 门的派生超集**(复用 H verdict,不另起一套判定)。 + +**范围边界(非范围 · 防越界)**: + +| 非范围项 | 归属 | 理由 | +|---|---|---| +| **路B**(gatespec 加 `firstPlay` 字段 + design-agent 自产 + `SaaPrompts.java` 逐字同改) | 完整版/推迟 | 触公平性铁律(Python+SAA 双侧字符级同步)+ 又一自产缺口;v0 路A 零改即够 | +| **"一句话现生成任意品类→首局门自动可达"** | 跟随 driver 自产 | 是 tap-driver 自产覆盖率的事,**不在组C 重复解 driver 缺口**(同一前置) | +| **经营/合成/放置纯品类**(无对应 driver/exportState) | Phase2+ | 现 3 款只覆盖 action/放置/规避;纯经营类现未必能生成 | +| **新生成游戏** | —— | v0 用现成 3 款固定 dispatch 面(breakout/tictactoe/saolei)验,零新生成 | + +> **本规格只交付"用现成 3 款验三条断言的 harness 门"。** 上表任一被实现 = 越界。 + +--- + +## ② 前置条件(已核实) + +1. **harness**:`game-runtime/games/_wg1-gen/_shared/play.cdp.cjs`(九门 A–I)+ `serve-and-play.sh`(端口 4320/9222 **串行**单 Chrome)。 +2. **状态契约就绪**:游戏 `_forensicsView().state()` 导出 `{phase, score, moves, targets, result, remaining, progress, ...}` → `host.state()` → `window.__gameState` → harness `readGameState`(`play.cdp.cjs:166`)。`phase ∈ booting|playing|gameover` = 现成"可玩/终局"信号。 +3. **3 款 play-spec 齐**:`tictactoe`(放置·moves↑+latch)/`saolei`(规避·safeOnly·win)/`breakout`(技巧·latch),覆盖三品类。 +4. **现成门可复用**:`H_progress`(`:635-664`,assertAfterPlay+expectLatch,已按品类分化)/`I_control`(`:506`,跟手)/`C_frame`(`:559`,掌帧)/`runTapTargets`·`runPaddleIntercept`(driver 选靶逻辑)。 + +--- + +## ③ 涉及文件 + +| 文件 | 动作 | +|---|---| +| `play.cdp.cjs`(主改,唯一核心改动) | 加首局门(3 断言)+ navigate→首帧计时点 + 从 driver 家族反推品类 + 投射 `verdict.firstPlay` | +| `game-runtime/games/_wg1-gen/{tictactoe,saolei,breakout}/` play-spec(可选) | 加 `firstPlay` 配置位(阈值 override,缺省走 harness 默认) | +| `index.template.html`(可选,断言①精确版) | 页面侧 `performance.now()` 打点 `window.__playableAtMs` | +| `verdict.json` 形态 | 扩 `firstPlay:{playableMs, firstFeedback, coreLoopReached, categoryDerived}` | + +--- + +## ④ 三条断言实现(按工程量/依赖排序) + +### ③ 60s 品类核心闭环可达(**先做** · 小 · 复用 H) +- **净缺口** = H_progress(assertAfterPlay+latch,**已按品类分化**:tictactoe moves↑、saolei result==win、breakout remaining↓+latch)外**只缺 60s 时限**(H 现轮询 latch 上限 ~4.2s,driver 总时长各 spec 自定,无 60s 总闸)。 +- **实现**:`main()` 真玩段(driver/inputs + latch 轮询)外加 `Date.now()` 墙钟;断言「核心断言通过 ∧ latch 达成」发生在 **≤60s** 内;派生 `coreLoopReached = (assertAfterPlay 全过 ∧ (非 action 类 progress↑ / action 类 latch 达终态))`。**复用 H verdict,几乎零新判定。** + +### ① 可玩 ≤2s(**次做** · 小-中 · 无 driver 依赖) +- **净缺口** = navigate→"可交互首帧"计时(**现完全无计时**)。可交互首帧语义点 = `index.template.html` `window.__genBooted=true`(引擎接管+state 别名挂好)。 +- **实现**:① **必须先解 `waitBoot:81` 的 `delay(800)` 固定 settle floor**(否则 playableMs 恒 ≥800,断言失真)——改短轮询起步 或 从计时中扣除该 settle。② 精确版:页面侧 `performance.now()` 在 navigationStart→`__genBooted=true` 打点写 `window.__playableAtMs`(避 CDP 轮询 ~300ms 粒度抖动),harness 读它;粗版:harness 侧 navigate 前 `t0`、booted 命中 `t1`(扣 settle)。③ 断言 `playableMs ≤ 2000` 落 verdict。 +- **阈值校准**:headless Chrome 冷启首帧比真机慢,**2s 阈值须 mini-desktop 实测校准**(待确认①)。 + +### ② 首反馈即时(**可同批/稍后** · 中 · 依赖 driver 选靶) +- **净缺口** = 首次输入→可见反馈延迟(**现无**;最近的 I_control 是"持续跟手"非"第一拍延迟",且仅技巧类声明 controlCheck 才跑)。 +- **实现**:`main()` driver/inputs **之前**插一段——记输入前 `__gameState`+帧哈希 → 派发**一次**该品类合法首招(放置=点首个未占 `targets` / 技巧=tap 一次 / 规避=点首个 `safe` 格,**复用 `runTapTargets`/`runPaddleIntercept` 选靶逻辑取第一招**)→ ≤300ms 复采,断言 `phase`/`score`/`moves` 任一变 **或** 帧哈希 `changed`。 +- **依赖/坑**:① **强依赖 driver 选靶**(首招要打中目标才有反馈)——v0 三款现成 driver 齐故可绕过;某品类若 design-agent 没自产可驱动 driver,该款首反馈 **SKIP**(非 FAIL,标"driver 缺")。② saolei `safeOnly` 首招**须点 safe 格**(避免首招踩雷秒负污染"反馈"判定)。③ 与 I_control 轻量共存、不复跑连点。 + +--- + +## ⑤ 验证方法 + +- 复用 `serve-and-play.sh ` 跑 **breakout / tictactoe / saolei** 三款(串行 4320/9222),**无需新生成**。 +- **验证点**:`verdict.json` 三款各出 `firstPlay.{playableMs≤2s, firstFeedback=true, coreLoopReached(≤60s)}` 且 `categoryDerived` 反推正确(breakout=技巧/tictactoe=放置/saolei=规避)。 +- **校准**:先跑一轮基线测 `playableMs` 与 coreLoop 实际时长,据实调 2s/60s 阈值(headless 比真机慢)。 +- **零回归**:三款原九门 A–I 结果不变(首局门是 additive 派生维度)。 + +--- + +## ⑥ 边界 / 失败路径 + +| 场景 | 处置 | +|---|---| +| settle floor 改造后 `waitBoot` 误判装载失败 | 保留超时兜底(改 settle 不改装载判定语义),单测/实跑验三款仍 boot 成功 | +| 某品类 design-agent 无可驱动 driver/targets | 首反馈门该款 **SKIP**(非 FAIL,标"driver 缺");v0 三款现成 driver 齐,不触此路 | +| 首局门与 H 门关系 | 首局门是 **H 门的派生超集**:首局门 FAIL **不推翻** H 门 pass/fail(H 仍是机制硬地板);首局门是其上的品类化/时限/即时性补充维度 | +| 60s 对慢品类(saolei 揭尽 100 步)不够 | 实测校准(待确认①);saolei 现 driver 100×150ms≈15s,余量足 | + +--- + +## ⑦ 完成条件 + +1. `play.cdp.cjs` 加首局门 3 断言 + navigate→首帧计时 + driver 家族反推品类 + `verdict.firstPlay` 投射。 +2. 三款 dispatch 面跑绿,各出 `firstPlay` verdict;2s/60s 阈值实测校准落值。 +3. **零改契约/prompt(路A)、零新生成**;§1 非范围项一个没碰。 +4. 三款原九门 A–I **零回归**(首局门 additive,不改八门判定)。 + +--- + +## ⑧ 回滚 + +- 首局门由 harness flag / play-spec `firstPlay.enabled` 控(建议默认**开**=作 W-G1 验收门,但**不阻断九门 pass/fail**);关 = 九门原行为逐字不变。 +- 纯 additive(新 verdict 维度 + 计时点),不改八门判定逻辑、不改任何契约/产物。 + +--- + +## ⑨ 待确认(实现期实测拍值) + +1. **2s / 60s 阈值** 在 mini-desktop headless 的实测校准值(先跑基线再定)。 +2. **settle floor 改造方式**:`waitBoot:81` `delay(800)` 改短轮询起步 vs 从计时扣除(择稳)。 +3. **首局门默认开/关**:建议默认开(作验收门),但首局门 FAIL 不阻断九门 pass(H 仍是硬地板)。 diff --git a/game-runtime/games/_wg1-gen/_shared/index.template.html b/game-runtime/games/_wg1-gen/_shared/index.template.html index cc622a84..5505b2e7 100644 --- a/game-runtime/games/_wg1-gen/_shared/index.template.html +++ b/game-runtime/games/_wg1-gen/_shared/index.template.html @@ -49,6 +49,10 @@ // 就绪/错误标记初值。 window.__genBooted = false; window.__genBootError = null; + // W-G1 组C·首局门断言①「可玩≤2s」精确计时:页面侧 performance.now() 在「可交互首帧」(__genBooted=true) 打点, + // 写 window.__playableAtMs(= 自 navigationStart/timeOrigin 起的毫秒)。harness 直接读它, + // 规避 ① CDP 轮询 ~300ms 粒度抖动 ② waitBoot 固定 settle floor 对计时的污染——二者都会让 harness 侧计时失真。 + window.__playableAtMs = null; try { var G = window.__GameBundle; if (!G || typeof G.bootGameHost !== 'function') { @@ -69,6 +73,8 @@ // 可测性别名:守卫H 经此读游戏可观测状态(host.state() 透传 game._forensicsView().state;游戏未实现则返回 {phase:'booting'})。 // 宿主侧挂载,工厂仍零 window;与 ref 在 onReady 挂 __refForensics 同范式。 window.__gameState = function () { try { return host && typeof host.state === 'function' ? host.state() : null; } catch (_) { return null; } }; + // 首局门断言①打点:可交互首帧达成的墙钟(performance.now() 以 navigationStart 为 0 点),供 harness 读取判 ≤2s。 + try { window.__playableAtMs = (typeof performance !== 'undefined' && performance.now) ? performance.now() : null; } catch (_) {} window.__genBooted = true; // CDP 探活标记(区分「脚本没加载」与「boot 抛错」) }) .catch(function (e) { diff --git a/game-runtime/games/_wg1-gen/_shared/play.cdp.cjs b/game-runtime/games/_wg1-gen/_shared/play.cdp.cjs index 40f27626..e5797772 100644 --- a/game-runtime/games/_wg1-gen/_shared/play.cdp.cjs +++ b/game-runtime/games/_wg1-gen/_shared/play.cdp.cjs @@ -102,14 +102,16 @@ async function frameDelta(cdp, ms) { return { f0, f1, delta: (f0 == null || f1 == null) ? null : (f1 - f0) }; } -/** 推进(对照)实例到目标帧号(real 引擎自走,轮询 __engine.frame)。返回到达的帧号(-1=超时)。 */ -async function advanceToFrame(cdp, targetFrame, timeoutMs) { +/** 推进(对照)实例到目标帧号(real 引擎自走,轮询 __engine.frame)。返回到达的帧号(-1=超时)。 + * pollMs:轮询间隔(缺省 100ms,G 门沿用)。A/B 首反馈对照传小值(如 16ms)逼近精确落帧—— + * 粗轮询(100ms≈6帧)会让 A/A' 落在不同精确帧→动球类自走态有差→污染对照;细轮询使三趟尽量落同一帧,差异才纯归输入。 */ +async function advanceToFrame(cdp, targetFrame, timeoutMs, pollMs) { const read = '(function(){var e=window.__engine;var s=(e&&typeof e.snapshot==="function")?e.snapshot():e;return (s&&typeof s.frame==="number")?s.frame:0;})()'; const deadline = Date.now() + (timeoutMs || 15000); while (Date.now() < deadline) { const f = await cdp.evaluate(read); if (f >= targetFrame) return f; - await delay(100); + await delay(pollMs || 100); } return -1; } @@ -523,6 +525,309 @@ async function runControlCheck(cdp, cc) { return { pass: results.length > 0 && results.every((r) => r.pass), paddlePath: ppath, results }; } +/* ════════════════════════════════════════════════════════════════════════════ + * 【首局体验门(W-G1 组C · 品类化 · additive 派生超集)】 + * 验主干口号「陌生人 10 秒觉得能玩」——3 条断言:① 可玩≤2s ② 首反馈即时 ③ 60s 内品类核心闭环可达。 + * v0=路A(零改生成侧):从【现有 play-spec.driver 家族】反推品类,复用 H 门判定,零新生成。 + * 设计要点:①② 走【独立 pre-flight CDP 会话】(预热导航量稳态 playableMs + 派一招测首反馈), + * 与九门主流程完全隔离 → 保证八门判定路径逐字不变(纯 additive,不破八门); + * ③ 在主流程对「driver+latch」段加墙钟 + 从 H 门结果派生 coreLoopReached(仅加时间戳/派生字段)。 + * ════════════════════════════════════════════════════════════════════════════ */ + +/** 路A 品类反推:从 driver.type 家族映射品类(零改生成侧,仅读现有 gatespec)。 + * tap-targets(无 safeOnly)→placement(放置族) / tap-targets+safeOnly→avoidance(规避族) / + * paddle-intercept 及其它 action 驱动→skill(技巧/action 族) / 无 driver→degraded(退化)。 */ +function deriveCategory(spec) { + const d = spec && spec.driver; + if (!d || !d.type) return 'degraded'; // 无 driver=退化(无对应可驱动品类) + if (d.type === 'tap-targets') return d.safeOnly === true ? 'avoidance' : 'placement'; + // 其余 driver(paddle-intercept/flap-to-gap/seek-x/key-cycle/aim-fire/drag-aiming/tap-pairs…)= 技巧/action 族 + return 'skill'; +} + +/** 取「该品类合法首招」的目标坐标(镜像各 driver 选靶逻辑取第一招,不改原 driver;读不到→null)。 + * placement(放置):首个未占用 targets 目标;avoidance(规避·扫雷):首个 safe===true 且未占用目标(须避首招踩雷秒负); + * skill(技巧):返回 {kind:'skill'} 交调用方按 driver 派一拍(paddle-intercept→点球正下方 / key-cycle→按首键 等)。 */ +function pickFirstMove(state, spec, category) { + const d = (spec && spec.driver) || {}; + if (category === 'placement' || category === 'avoidance') { + const targets = getPath(state, d.targetsPath || 'targets'); + if (!Array.isArray(targets) || !targets.length) return null; + let t; + if (category === 'avoidance') { + // 规避族首招须点 safe 格(避免首招踩雷把"反馈"判定污染成秒负)。 + t = targets.find((g) => g && g.occupied !== true && g.safe === true && typeof g.x === 'number'); + } else { + t = targets.find((g) => g && g.occupied !== true && typeof g.x === 'number') || targets.find((g) => g && typeof g.x === 'number'); + } + if (t && typeof t.x === 'number') return { kind: 'tap', x: Math.max(4, Math.min(386, t.x)), y: Math.max(4, Math.min(840, t.y)) }; + return null; + } + if (category === 'skill') { + // 技巧/action 族:按 driver.type 派一拍合法首招(复用各 driver 选靶口径取第一招)。 + if (d.type === 'paddle-intercept' || d.type === undefined) { + const bx = getPath(state, d.ballPath || 'ball.x'); + const paddleY = d.paddleY != null ? d.paddleY : 800; + if (typeof bx === 'number') return { kind: 'tap', x: Math.max(8, Math.min(382, bx)), y: paddleY }; + return { kind: 'tap', x: 195, y: paddleY }; // 读不到球位→点屏中下兜一拍(仍是合法输入) + } + if (d.type === 'key-cycle') { const keys = (d.keys && d.keys.length) ? d.keys : ['ArrowLeft']; return { kind: 'key', code: keys[0], downMs: d.downMs || 60 }; } + if (d.type === 'aim-fire') return { kind: 'key', code: d.fireKey || 'Space', downMs: d.downMs || 70 }; + if (d.type === 'flap-to-gap') return { kind: 'tap', x: d.tapX != null ? d.tapX : 195, y: 420 }; + if (d.type === 'seek-x') return { kind: 'tap', x: d.rightX != null ? d.rightX : 320, y: 420 }; + if (d.type === 'drag-aiming') { const o = d.origin || { x: 80, y: 600 }; return { kind: 'drag', from: o, to: { x: o.x - 120, y: o.y + 120 }, ms: d.dragMs || 360 }; } + if (d.type === 'tap-pairs') { const tg = getPath(state, d.targetsPath || 'targets'); if (Array.isArray(tg) && tg[0] && typeof tg[0].x === 'number') return { kind: 'tap', x: tg[0].x, y: tg[0].y }; return null; } + return { kind: 'tap', x: 195, y: 600 }; // 未知 skill driver→中屏兜一拍 + } + return null; // degraded:无可驱动首招 +} + +/** 派一招首招(kind=tap/key/drag)。 */ +async function dispatchFirstMove(cdp, mv) { + if (!mv) return false; + if (mv.kind === 'tap') { await tap(cdp, mv.x, mv.y); return true; } + if (mv.kind === 'key') { await key(cdp, mv.code, mv.downMs); return true; } + if (mv.kind === 'drag') { await drag(cdp, mv.from, mv.to, mv.ms); return true; } + return false; +} + +/** 读引擎当前帧号(real 通道 __engine.snapshot().frame;读不到返 0)。复用 G 门同一帧号口径。 */ +async function readEngineFrame(cdp) { + return await cdp.evaluate('(function(){var e=window.__engine;var s=(e&&typeof e.snapshot==="function")?e.snapshot():e;return (s&&typeof s.frame==="number")?s.frame:0;})()'); +} + +/** 两帧 RGBA 像素差异计数(逐像素 maxCh 差 >24 计一处变;尺寸不一致返 -1)。用于 A/B 信号/噪声度量。 */ +function diffPixels(a, b) { + if (!a || !b || !a.length || a.length !== b.length) return -1; + let n = 0; + for (let i = 0; i < a.length; i += 4) { + const da = Math.max(Math.abs(a[i] - b[i]), Math.abs(a[i + 1] - b[i + 1]), Math.abs(a[i + 2] - b[i + 2]), Math.abs(a[i + 3] - b[i + 3])); + if (da > 24) n++; // 容 readback 抖动,>24 才算真变 + } + return n; +} + +/** 一趟首反馈对照:fresh navigate → boot → 读 boot 帧 → 若 mv 给了招则立刻派一招(B 趟)/不派(A 趟) → + * 推进到【绝对目标帧 targetFrame】落帧瞬间原子采 RGBA 像素 + state → 关会话。返 {bootFrame, frame, img, state}。 + * ★ 必须【串行】单实例跑(open→advance→close,一次只一个活动 target):headless Chrome 对【后台 target】rAF 节流/冻结, + * 若同时开三个 target 并发推进,只有前台那个自由跑、另俩 frame 卡在 boot(实测 A/A'=-1、B=2484 全程) → 对照彻底失效。 + * 串行下每趟都是当前唯一活动 target=前台 rAF 满速;确定性(同 seed+固定步)保各趟推进到同一绝对帧的自走态可比。 + * @param {Object|null} mv 首招(null=A/A' 不派);@param {number} [repeat] 该招重复次数(控制体类挡板需多拍逼近, + * 取 spec.controlCheck.tapsPerTarget;每拍间留 1 帧消化,推进到目标帧前派完) —— 仍属「一次首招交互」(玩家朝一侧拖/连点)。 */ +async function feedbackTrip(connectFn, url, cdpHttp, mv, targetFrame, timeoutMs, pollMs, repeat) { + const trip = await connectFn(url, cdpHttp); + try { + await waitBoot(trip, 30000); + const bootFrame = await readEngineFrame(trip); + if (mv) { // B 趟 boot 后立刻派招(控制体类连派 repeat 拍逼近);A 趟 mv=null 不派(纯自走) + const n = Math.max(1, repeat || 1); + for (let i = 0; i < n; i++) { await dispatchFirstMove(trip, mv); } + } + const reached = await advanceToFrame(trip, targetFrame, timeoutMs, pollMs); + let img = null; try { img = await captureImageData(trip, '#game-engine'); } catch (_) {} + const state = await readGameState(trip); + return { bootFrame, frame: reached, img, state }; + } finally { + try { trip.close(); } catch (_) {} + } +} + +/** A/B 无输入对照·首反馈严谨判(复用 G 门「同帧号比对」范式,自由运行引擎下用【信号/噪声】净判动球类): + * ★【串行】跑三趟 fresh 实例(各 open→boot→[派招]→推进→采→close,一次只一个活动 target)—— + * headless Chrome 对后台 target rAF 节流/冻结,并发开三个只前台那个跑(实测 A/A' frame=-1、B=2484 全程跑完=对照失效);串行可避。 + * A(无输入自走基线) / A'(无输入纯净探针) / B(派一招首招),其中 B boot 后立刻派一招。 + * ★ 三趟推进到【同一绝对目标帧 target】(同 seed 缺省 0x1234abcd + LittleJS 固定步,frame N=自 init 第 N 拍,跨 fresh 实例可比; + * G 门 atFrame=943 对照已实证此性质)。但 real 引擎自由运行(host 不掌 RAF,无法暂停/回退,见 boot-game-host real 通道), + * 三趟落帧有 ≤数帧抖动 → 动球自走位置略有差(噪声)。故【不】用裸帧哈希等值(过严→动球类必假 SKIP),改【信号/噪声】度量: + * noise = diffPixels(A, A') —— 两趟【无输入】基线抖动(同帧号目标下的落帧抖动+引擎噪声),即「可净判的噪声地板」。 + * signal = diffPixels(A, B) —— 输入趟 vs 无输入基线的差异(=输入因果 + 同等抖动)。 + * ★ 判定阶梯(优先取「免动球抖动污染」的因果维度): + * ⓪ 控制体维度(input-controllable):若 spec.controlCheck.paddlePath 给了控制体位置路径(如 breakout paddle.x)—— + * A 趟无输入→控制体停默认位、B 趟点首招→控制体被移;|ctrlB-ctrlA| 显著(>moveMin) → true(挡板动 vs 不动=真输入因果, + * 只比该维度=【免球位/粒子抖动污染】,最干净);≈0 → false(输入没动控制体=坏输入,真 FAIL)。这是 prompt「只比 input-controllable 维度」之意。 + * ① 否则 state 级因果(remaining/score/moves/phase 变,A vs B)=次强信号,直接 true(无歧义); + * ② 否则像素级:signal 显著超 noise(signal ≥ noise×3 ∧ signal ≥ MIN_SIGNAL) ∧ 噪声地板有界(noise ≤ NOISE_CEILING) → true; + * ——但动球类裸全帧像素易被「球每帧本在动+两趟落帧抖动」污染(实测 breakout noise≈signal),故仅作【无控制体路径时】的兜底,有路径优先取⓪。 + * ③ noise 超顶(NOISE_CEILING,两趟无输入已大幅分叉)=非确定性(unseeded random/wall-clock 物理) → 不可净判,SKIP(血统债); + * ④ 否则(signal≈noise,输入未显著超基线,且无控制体维度可裁) → SKIP(像素不可净判,标血统债;不假 FAIL——可能只是动球抖动盖过信号)。 + * 返回 {clean(可净判?), feedback(true/false/null), noise, signal, ctrlDelta, stateChanged, ...}。任一趟 boot/推进异常→抛,由调用方兜成 SKIP。 + * @param {Object} spec play-spec(读 controlCheck.paddlePath/moveMin 取控制体维度)。 + * @param {number} fbFrames 反馈窗折算帧数(目标=boot 帧 + fbFrames,确保推进段够长容输入显现)。 */ +async function measureFirstFeedbackAB(connectFn, url, cdpHttp, mv, spec, fbFrames) { + // 信号/噪声门限:动球类一招挡板移位上百像素,远超 ≤数帧球位抖动(几十像素内);取保守倍率+绝对地板+噪声顶。 + const SIGNAL_RATIO = 3; // signal 须 ≥ noise×3 才认显著(隔离纯抖动) + const MIN_SIGNAL = 200; // 像素绝对地板(挡板 70px 宽×移位→数百像素;低于此视为无实质输入效果) + const NOISE_CEILING = 6000; // 噪声顶(两趟无输入差异超此=非确定性,不可净判) + const win = Math.max(6, fbFrames); + { + // ★ 串行三趟(每趟 open→boot→[派招]→推进→采→close,避免并发后台 target rAF 冻结)。 + // 1) 探一趟 boot 帧以定【绝对目标帧 target】(留 30 帧余量,保后续趟 boot 帧 < target 不被秒越过)。 + const tmp = await connectFn(url, cdpHttp); + let firstBoot = 0; + try { await waitBoot(tmp, 30000); firstBoot = await readEngineFrame(tmp); } finally { try { tmp.close(); } catch (_) {} } + const target = firstBoot + win + 30; // 绝对目标帧(参照 boot + 窗帧 + 余量) + // 控制体类首招【因果探针强化】:若 spec.controlCheck 给了控制体(paddle.x)+tapXs,B 趟改点【离默认位最远的 tapX】并连派 tapsPerTarget 拍—— + // 原 mv 点 ball-x 可能 ≈ 控制体默认位(实测 ball≈198≈paddle195→Δ仅3)→无法证因果;改点远端边(如 x=50)保控制体被大幅移开,因果信号干净。 + // 仍属「一次该品类合法首招」(玩家朝一侧拖/连点把挡板移到边)。 + const cc = spec && spec.controlCheck; + let bMove = mv, bRepeat = 1; + if (cc && cc.paddlePath && Array.isArray(cc.tapXs) && cc.tapXs.length && cc.paddleY != null) { + const farX = cc.tapXs.reduce((a, b) => (Math.abs(b - 195) > Math.abs(a - 195) ? b : a), cc.tapXs[0]); // 离屏中默认位最远的 tapX + bMove = { kind: 'tap', x: Math.max(4, Math.min(386, farX)), y: cc.paddleY }; + bRepeat = Math.max(1, cc.tapsPerTarget || 1); + } + // 2) 三趟串行各推进到 ≥target,落帧瞬间原子采像素+state(16ms 细轮询逼近精确落帧);B 趟派首招,A/A' 不派。 + const gA = await feedbackTrip(connectFn, url, cdpHttp, null, target, 30000, 16); // 无输入自走基线 + const gAp = await feedbackTrip(connectFn, url, cdpHttp, null, target, 30000, 16); // 无输入纯净探针 + const gB = await feedbackTrip(connectFn, url, cdpHttp, bMove, target, 30000, 16, bRepeat); // 派首招(控制体类连派至远端边) + const aData = gA.img && gA.img.data, apData = gAp.img && gAp.img.data, bData = gB.img && gB.img.data; + const noise = diffPixels(aData, apData); // 无输入基线抖动(噪声地板) + const signal = diffPixels(aData, bData); // 输入趟 vs 无输入基线 + const stateChanged = !!(gA.state && gB.state && (gA.state.phase !== gB.state.phase || gA.state.score !== gB.state.score || gA.state.moves !== gB.state.moves || gA.state.remaining !== gB.state.remaining)); + const pixelsOk = (noise >= 0 && signal >= 0); // 两次像素采集都成功才论像素信号 + // ⓪ 控制体维度(input-controllable):读 spec.controlCheck.paddlePath 指向的控制体位置(如 breakout paddle.x)——免动球/粒子抖动污染。 + const ctrlPath = spec && spec.controlCheck && spec.controlCheck.paddlePath; + const moveMin = (spec && spec.controlCheck && typeof spec.controlCheck.moveMin === 'number') ? spec.controlCheck.moveMin : 25; + let ctrlA = null, ctrlB = null, ctrlDelta = null; + if (ctrlPath) { + ctrlA = getPath(gA.state, ctrlPath); // A 趟无输入→控制体停默认位 + ctrlB = getPath(gB.state, ctrlPath); // B 趟点首招→控制体被移 + if (typeof ctrlA === 'number' && typeof ctrlB === 'number') ctrlDelta = Math.abs(ctrlB - ctrlA); + } + let clean, feedback, reason; + if (ctrlDelta != null) { + // ⓪ 控制体维度可裁(最干净,免动球抖动):B 输入把控制体移开默认位 → 显著(>moveMin)=真输入因果 true;≈0=输入没动控制体=真 FAIL。 + if (ctrlDelta > moveMin) { clean = true; feedback = true; reason = 'control-body-moved'; } + else { clean = true; feedback = false; reason = 'control-body-not-moved'; } + } else if (stateChanged) { + // ① state 级因果(次强信号):A vs B 的 phase/score/moves/remaining 变 = 输入真改变游戏态,无歧义 true。 + clean = true; feedback = true; reason = 'state-causal'; + } else if (!pixelsOk) { + // 像素采集失败(canvas readback 异常)且无控制体/state 信号 → 不可净判 SKIP。 + clean = false; feedback = null; reason = 'pixel-capture-failed'; + } else if (noise > NOISE_CEILING) { + // ③ 噪声地板超顶:两趟无输入已大幅分叉 = 非确定性(unseeded random/wall-clock 物理) → 不可净判 SKIP(血统债)。 + clean = false; feedback = null; reason = 'nondeterministic-noise-over-ceiling'; + } else if (signal >= MIN_SIGNAL && signal >= noise * SIGNAL_RATIO) { + // ② 像素级显著(仅无控制体路径时兜底):输入趟差异远超无输入基线抖动 → 真输入因果 true。 + clean = true; feedback = true; reason = 'pixel-signal-over-noise'; + } else { + // ④ signal≈noise 且无控制体维度可裁:动球抖动可能盖过信号,不敢断 FAIL → 诚实 SKIP(像素不可净判,血统债)。 + clean = false; feedback = null; reason = 'pixel-signal-not-distinguishable-from-noise'; + } + return { + clean, feedback, reason, noise, signal, ctrlDelta, ctrlPath: ctrlPath || null, ctrlA, ctrlB, moveMin, stateChanged, + bMove: { kind: bMove && bMove.kind, x: bMove && bMove.x, y: bMove && bMove.y, code: bMove && bMove.code, repeat: bRepeat }, // B 趟实派的因果探针招 + signalRatio: SIGNAL_RATIO, minSignal: MIN_SIGNAL, noiseCeiling: NOISE_CEILING, + target, frameA: gA.frame, frameAp: gAp.frame, frameB: gB.frame, fbFrames: Math.max(6, fbFrames), + bootFrameA: gA.bootFrame, bootFrameAp: gAp.bootFrame, bootFrameB: gB.bootFrame, + phaseA: gA.state && gA.state.phase, phaseB: gB.state && gB.state.phase, + remainingA: gA.state && gA.state.remaining, remainingB: gB.state && gB.state.remaining, + }; + } +} + +/** 首局门 pre-flight(断言①②,独立 CDP 会话,与九门主流程隔离)。 + * 流程:建会话 → 预热导航(暖 JIT/GPU/bundle 解析,丢弃计时;隔离 headless 冷启一次性开销,非游戏本征可玩时) + * → about:blank 清场 → 计时导航该 game → 读页面侧 __playableAtMs(断言① ≤thresholdMs) + * → 断言② 首反馈即时性:静态盘类(placement/avoidance)走原单趟口径(零输入帧不变→frameChanged=输入因果); + * skill/action 类(动画自走)走【A/B 无输入对照·信号/噪声严谨判】(复用 G 门同帧号范式,见 measureFirstFeedbackAB): + * A(无输入基线)/A'(无输入探针)/B(派一招)三趟同帧号采像素;noise=diff(A,A')=基线抖动地板,signal=diff(A,B)=输入趟差异; + * state 级因果(remaining/score 变)直接 true;否则 signal 显著超 noise→true(挡板被点动);noise 超顶=非确定性→SKIP(血统债,不假判)。 + * 返回 {playableMs, firstFeedback, firstMove, ...};任一步失败带原因,不抛(首局门 FAIL 不阻断九门)。 */ +async function measureFirstPlay(connectFn, url, cdpHttp, spec, category, opts) { + const thresholdMs = (opts && opts.playableThresholdMs) || 2000; + const fbWindowMs = (opts && opts.feedbackWindowMs) || 300; + // 输出字段用契约名 categoryDerived(路A 从 driver 家族反推所得品类);playableMs/firstFeedback/coreLoopReached 同为契约字段。 + const out = { enabled: true, categoryDerived: category, playableMs: null, playableThresholdMs: thresholdMs, warmupMs: null, firstFeedback: false, firstMove: null, notes: [] }; + let cdp = null; + try { + cdp = await connectFn(url, cdpHttp); + // 预热导航:connectFn 已导航一次,等其 boot(暖机),丢弃此计时。 + try { await waitBoot(cdp, 30000); } catch (e) { out.notes.push('预热导航 boot 失败:' + ((e && e.message) || e)); } + const warmPm = await cdp.evaluate('(typeof window.__playableAtMs==="number"?window.__playableAtMs:null)').catch(() => null); + if (typeof warmPm === 'number') out.warmupMs = Math.round(warmPm); + // 清场 → 计时导航(量稳态 playableMs,规避一次性冷启)。 + await cdp.send('Page.navigate', { url: 'about:blank' }); + await delay(150); + await cdp.send('Page.navigate', { url }); + // 断言①:轮询等可交互首帧(__genBooted ∧ 引擎接管),读页面侧 __playableAtMs(performance.now 以 navigationStart 为 0 点)。 + const deadline = Date.now() + 30000; + let pm = null; + while (Date.now() < deadline) { + const st = await cdp.evaluate('({ b:!!window.__genBooted, e:!!window.__gameHostEngineInitFired, pm:(typeof window.__playableAtMs==="number"?window.__playableAtMs:null), err:(window.__genBootError||window.__gameHostBootError||null) })'); + if (st && st.err) { out.notes.push('计时导航装载失败:' + st.err); break; } + if (st && st.b && st.e) { pm = st.pm; break; } + await delay(50); + } + if (typeof pm === 'number') { + out.playableMs = Math.round(pm); out.playableOk = out.playableMs <= thresholdMs; + // P2-1 局限标注:playableMs=预热后 warm 稳态(已隔离 headless 冷启),不覆盖 bundle 首加载退化。 + out.playableScope = 'warm'; + out.notes.push('playableMs=预热后 warm 稳态,不覆盖 bundle 首加载退化;warmupMs 记冷启;真机 first-load 阈值校准留 staging(P2)。本门 v0 守得住卡死/装载失败退化,守不住大 bundle/慢首加载退化。'); + } + else { out.notes.push('未读到 __playableAtMs(页面侧打点缺失或装载未完成)'); out.playableOk = false; } + + // 断言②:首反馈即时性。从暖机实例(cdp,已 boot)读初态选首招;skill 族走 A/B 同帧号对照(严谨判),静态盘走原单趟口径。 + if (out.playableMs != null) { + const sInit = await readGameState(cdp); // 暖机实例初态:供 pickFirstMove 选靶(确定性→各 fresh 趟同此态) + const mv = pickFirstMove(sInit, spec, category); + out.firstMove = mv ? { kind: mv.kind, x: mv.x, y: mv.y, code: mv.code } : null; + if (!mv) { + // 无可驱动首招(如 degraded 或 design-agent 未自产 targets)→ SKIP(非 FAIL,标"driver 缺")。 + out.firstFeedback = null; out.firstFeedbackSkipped = 'driver 缺/无可驱动合法首招'; + } else if (category === 'skill') { + // ── skill/action 族(动画自走,如 breakout):A/B 无输入对照·严谨判(复用 G 门同帧号范式,见 measureFirstFeedbackAB)。── + // A(无输入)/A'(无输入探针)/B(派一招)各 fresh navigate+同 seed,串行推进到【同一绝对帧】比对;优先取控制体维度(paddle.x)免动球抖动污染: + // A 趟控制体停默认位、B 趟被输入移开 → Δ 显著=真输入因果(挡板动 vs 不动),非「球本就在动」的重言式;无控制体路径才退信号/噪声像素兜底。 + const fbFrames = Math.max(6, Math.round((fbWindowMs / 1000) * 30)); // 反馈窗折算帧数(@60fps 理论~30/s;300ms≈18 帧) + try { + const ab = await measureFirstFeedbackAB(connectFn, url, cdpHttp, mv, spec, fbFrames); + out.firstFeedbackDetail = Object.assign({ method: 'AB-signal-noise', category }, ab); + // 证据串:控制体维度优先,否则信噪。 + const ev = (ab.ctrlDelta != null) ? ('控制体' + ab.ctrlPath + ' Δ=' + Math.round(ab.ctrlDelta) + '(>moveMin' + ab.moveMin + '?)') : ('signal=' + ab.signal + ' noise=' + ab.noise); + if (!ab.clean) { + // 不可净判(像素信号≈噪声/噪声超顶/采集失败,且无控制体维度可裁) → 诚实 SKIP(标血统债,不假判)。 + out.firstFeedback = null; + out.firstFeedbackSkipped = 'A/B 不可净判(' + ab.reason + '):' + ev + ' → 动球抖动盖过信号/非确定性,需受控面 seed 或导出控制体维度(血统债)'; + out.notes.push('首反馈[SKIP] 动画自走类 A/B(' + ab.reason + ')@f' + ab.target + ':' + ev + ' → 不可净判(像素信号被动球/落帧抖动污染或非确定性;血统债:需受控面 seed 或游戏导出控制体位置维度)'); + } else if (ab.feedback) { + // 可净判·真反馈:控制体被点动 / state 级因果 / 像素信号显著超噪声。 + out.firstFeedback = true; + out.notes.push('首反馈[真判] 动画自走类 A/B(' + ab.reason + ')@f' + ab.target + ':' + ev + ' → 输入因果成立(控制体被点动/状态变/信号显著),非「球本就在动」的重言式'); + } else { + // 可净判·真 FAIL:控制体维度可裁但输入没动控制体(坏输入游戏)。 + out.firstFeedback = false; + out.notes.push('首反馈[FAIL] 动画自走类 A/B(' + ab.reason + ')@f' + ab.target + ':' + ev + ' → 输入未移动控制体(坏输入游戏,真 FAIL)'); + } + } catch (eAB) { + // A/B 任一趟 navigate/推进异常 → 不可判 SKIP(非 FAIL,标对照失败原因)。 + out.firstFeedback = null; + out.firstFeedbackSkipped = 'A/B 对照趟异常:' + ((eAB && eAB.message) || eAB); + out.notes.push('首反馈[SKIP] A/B 对照趟异常:' + ((eAB && eAB.message) || eAB)); + } + } else { + // ── placement/avoidance(静态盘):保持原单趟口径(零输入帧不变→frameChanged 即输入因果,无须 A/B)。── + const s0 = sInit; + let h0 = null; try { h0 = await sampleHash(cdp, '#game-engine'); } catch (_) {} + await dispatchFirstMove(cdp, mv); + await delay(fbWindowMs); + const s1 = await readGameState(cdp); + let h1 = null; try { h1 = await sampleHash(cdp, '#game-engine'); } catch (_) {} + const stateChanged = !!(s0 && s1 && (s0.phase !== s1.phase || s0.score !== s1.score || s0.moves !== s1.moves)); + const frameChanged = (h0 != null && h1 != null && h0 !== h1); + out.firstFeedback = stateChanged || frameChanged; // 静态盘:frameChanged=输入因果,保持原口径 + out.firstFeedbackDetail = { method: 'single-trip', stateChanged, frameChanged, category, frameIsCausal: true, phase0: s0 && s0.phase, phase1: s1 && s1.phase, score0: s0 && s0.score, score1: s1 && s1.score, moves0: s0 && s0.moves, moves1: s1 && s1.moves }; + } + } + } catch (e) { + out.notes.push('首局门 pre-flight 异常:' + ((e && e.message) || e)); + } finally { + if (cdp) cdp.close(); + } + return out; +} + async function main() { const argv = process.argv.slice(2); const gameId = argv[0]; @@ -541,6 +846,23 @@ async function main() { const url = `${base}/games/_wg1-gen/${gameId}/index.html`; const verdict = { gameId, url, ts: null, guards: {}, pass: false, notes: [] }; + + // 首局门(W-G1 组C)开关:默认开(作 W-G1 验收门);--no-firstplay 关→九门原行为逐字不变。 + // 首局门 FAIL【不阻断】九门 pass/fail(H 仍是机制硬地板,首局门是其上的品类化/时限/即时性派生维度)。 + const firstPlayEnabled = !argv.includes('--no-firstplay') && (spec.firstPlay && spec.firstPlay.enabled === false ? false : true); + const category = deriveCategory(spec); // 路A:从 driver 家族反推品类 + // 阈值:spec.firstPlay 可 override;缺省走 harness 默认(2s/60s,已经 mini-desktop 实测校准——预热导航后稳态 playableMs≈55-60ms)。 + const fpCfg = spec.firstPlay || {}; + const playableThresholdMs = fpCfg.playableThresholdMs != null ? fpCfg.playableThresholdMs : 2000; + const coreLoopThresholdMs = fpCfg.coreLoopThresholdMs != null ? fpCfg.coreLoopThresholdMs : 60000; + const feedbackWindowMs = fpCfg.feedbackWindowMs != null ? fpCfg.feedbackWindowMs : 300; + + // 首局门断言①②:独立 pre-flight 会话(与九门主流程隔离,保证八门判定逐字不变)。先跑→顺带暖 Chrome(主流程 boot 更快)。 + let firstPlay = null; + if (firstPlayEnabled) { + firstPlay = await measureFirstPlay(connect, url, cdpHttp, spec, category, { playableThresholdMs, feedbackWindowMs }); + } + let cdp = null; try { cdp = await connect(url, cdpHttp); @@ -565,6 +887,9 @@ async function main() { verdict.guards.I_control = { pass: true, skipped: '未声明 controlCheck(向后兼容)' }; } + // 首局门断言③:核心闭环墙钟起点(包住「driver 真玩段 + 后续 latch 轮询」,断言核心闭环达成在 ≤60s 内)。 + const coreLoopStartMs = Date.now(); + // 真玩:有 driver 走【适配性驱动】(读 state 自动接球,真玩技巧游戏,解盲打假阴性);否则走固定输入序列。每步采帧哈希供守卫E。 const hashes = [px0.hash]; if (spec.driver) { @@ -663,14 +988,39 @@ async function main() { verdict.guards.H_progress = { pass: progressPass && latchPass, checks, latch, state0, state1 }; } + // 首局门断言③:60s 品类核心闭环可达——从 H 门结果派生 coreLoopReached(复用 H 判定,几乎零新判定)。 + // coreLoopReached = (H 机制断言全过 ∧ (action/技巧类→latch 达终态 / 放置·规避类→进展断言含 moves↑/result==win 等核心反馈)) ∧ 墙钟 ≤60s。 + // H 门已按品类分化(tictactoe moves↑、saolei result==win、breakout remaining↓+latch),故 H.pass 即「核心反馈闭环达成」语义;此处仅加 60s 时限维度。 + if (firstPlayEnabled && firstPlay) { + const coreLoopElapsedMs = Date.now() - coreLoopStartMs; + const hg = verdict.guards.H_progress || {}; + const hMechReached = !!hg.pass && !hg.skipped; // H 真过(非 SKIP 老游戏)= 核心机制闭环达成 + firstPlay.coreLoopReached = hMechReached && coreLoopElapsedMs <= coreLoopThresholdMs; + firstPlay.coreLoopElapsedMs = coreLoopElapsedMs; + firstPlay.coreLoopThresholdMs = coreLoopThresholdMs; + if (hg.skipped) firstPlay.coreLoopNote = 'H 门 SKIP(老游戏未声明机制门)→ coreLoopReached 无判定基线'; + else if (!hMechReached) firstPlay.coreLoopNote = 'H 门未过→核心闭环未达成'; + else if (coreLoopElapsedMs > coreLoopThresholdMs) firstPlay.coreLoopNote = `核心闭环达成但超 60s(${coreLoopElapsedMs}ms)`; + // 首局门三断言汇总(playableOk ∧ firstFeedback ∧ coreLoopReached;firstFeedback=null 即 driver 缺=SKIP 不计入 FAIL)。 + const fbOk = firstPlay.firstFeedback === true || firstPlay.firstFeedback === null; + firstPlay.pass = !!firstPlay.playableOk && fbOk && !!firstPlay.coreLoopReached; + } + verdict.pass = ['A_boot', 'B_uncaught', 'C_frame', 'D_render', 'E_live', 'F_wiring', 'G_input', 'H_progress', 'I_control'] .every((g) => verdict.guards[g] && verdict.guards[g].pass); + // 首局门是 H 门的派生超集:投射到 verdict.firstPlay,但【不并入】verdict.pass(不阻断九门 pass/fail,H 仍是机制硬地板)。 + if (firstPlay) verdict.firstPlay = firstPlay; } catch (e) { verdict.error = String((e && e.message) || e); verdict.guards.A_boot = verdict.guards.A_boot || { pass: false, err: verdict.error }; } finally { if (cdp) cdp.close(); } + // 兜底投射首局门(即便九门主流程中途异常,pre-flight 的 ①②结果也落档;③ 若主流程没跑到则保持初值 false+note)。 + if (firstPlay && !verdict.firstPlay) { + if (firstPlay.coreLoopReached === undefined) { firstPlay.coreLoopReached = false; firstPlay.coreLoopNote = '九门主流程异常,核心闭环段未执行'; firstPlay.pass = false; } + verdict.firstPlay = firstPlay; + } fs.writeFileSync(path.join(evDir, 'verdict.json'), JSON.stringify(verdict, null, 2)); // 控制台四件套摘要。 @@ -689,6 +1039,21 @@ async function main() { + (g.H_progress.latch ? ` latch[${g.H_progress.latch.pass ? '✓驻留' : '✗' + (g.H_progress.latch.reason || '')}]` : ''))); if (g.I_control) line('I 控制跟手', g.I_control.pass, g.I_control.skipped || (g.I_control.results || []).map((r) => `tap${r.tapX}:move${r.moved == null ? '?' : Math.round(r.moved)}→dist${r.distToTarget == null ? '?' : Math.round(r.distToTarget)}[${r.pass ? '✓' : '✗'}]`).join(' ')); + // 首局门摘要(W-G1 组C · 派生维度,不计入九门 pass/fail)。 + if (verdict.firstPlay) { + const f = verdict.firstPlay; + const fbStr = f.firstFeedback === null ? `SKIP(${f.firstFeedbackSkipped || 'driver缺'})` : (f.firstFeedback ? '✓' : '✗'); + console.log(` ── 首局门[${f.categoryDerived}] ${f.pass ? '✅' : '⚠️ '}(派生·不阻断九门)`); + console.log(` ① 可玩 ${f.playableMs == null ? '?' : f.playableMs}ms ≤${f.playableThresholdMs}ms [${f.playableOk ? '✓' : '✗'}]${f.warmupMs != null ? ` (预热冷启=${f.warmupMs}ms,已隔离)` : ''}`); + const fbd = f.firstFeedbackDetail; + const fbEv = fbd && fbd.ctrlDelta != null ? `控制体${fbd.ctrlPath}Δ=${Math.round(fbd.ctrlDelta)}(A=${Math.round(fbd.ctrlA)}/B=${Math.round(fbd.ctrlB)})` : (fbd ? `signal=${fbd.signal} noise=${fbd.noise}` : ''); + const fbExtra = fbd ? (fbd.method === 'AB-signal-noise' + ? ` (A/B@f${fbd.target} ${fbEv} state变=${fbd.stateChanged} 判据=${fbd.reason} 净判=${fbd.clean})` + : ` (单趟 state变=${fbd.stateChanged} 帧变=${fbd.frameChanged})`) : ''; + console.log(` ② 首反馈 [${fbStr}]${fbExtra}`); + console.log(` ③ 60s核心闭环 ${f.coreLoopElapsedMs == null ? '?' : f.coreLoopElapsedMs}ms ≤${f.coreLoopThresholdMs}ms [${f.coreLoopReached ? '✓' : '✗'}]${f.coreLoopNote ? ' ' + f.coreLoopNote : ''}`); + if (f.notes && f.notes.length) console.log(' notes:', f.notes.join(' | ')); + } if (verdict.error) console.log(' ⚠️ error:', verdict.error); console.log(` evidence → ${path.relative(process.cwd(), evDir)}/`); process.exit(verdict.pass ? 0 : 1); diff --git a/game-runtime/games/_wg1-gen/breakout/evidence/after-play.png b/game-runtime/games/_wg1-gen/breakout/evidence/after-play.png index 8a100410ada5bbddbc650b59301bd5e1741f5b49..37ef06877208eb1ee2d47dde09deeb4f04b7aef4 100644 GIT binary patch literal 27602 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 diff --git a/game-runtime/games/_wg1-gen/breakout/evidence/first-paint.png b/game-runtime/games/_wg1-gen/breakout/evidence/first-paint.png index 65d60fb0f53aa4276aa757fa6b2b1af3713daf46..f10985a78a6f2b7e3ca045ccadb9c52aaf33b958 100644 GIT binary patch literal 17524 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 → 输入因果成立(控制体被点动/状态变/信号显著),非「球本就在动」的重言式" + ], + "playableOk": true, + "playableScope": "warm", + "firstFeedbackDetail": { + "method": "AB-signal-noise", + "category": "skill", + "clean": true, + "feedback": true, + "reason": "control-body-moved", + "noise": 1108, + "signal": 10681, + "ctrlDelta": 144.9999980491333, + "ctrlPath": "paddle.x", + "ctrlA": 195, + "ctrlB": 50.0000019508667, + "moveMin": 25, + "stateChanged": false, + "bMove": { + "kind": "tap", + "x": 50, + "y": 800, + "repeat": 6 + }, + "signalRatio": 3, + "minSignal": 200, + "noiseCeiling": 6000, + "target": 85, + "frameA": 85, + "frameAp": 85, + "frameB": 100, + "fbFrames": 9, + "bootFrameA": 45, + "bootFrameAp": 45, + "bootFrameB": 46, + "phaseA": "playing", + "phaseB": "playing", + "remainingA": 30, + "remainingB": 30 + }, + "coreLoopReached": true, + "coreLoopElapsedMs": 28323, + "coreLoopThresholdMs": 60000, + "pass": true + } } \ No newline at end of file diff --git a/game-runtime/games/_wg1-gen/breakout/index.html b/game-runtime/games/_wg1-gen/breakout/index.html index cc622a84..5505b2e7 100644 --- a/game-runtime/games/_wg1-gen/breakout/index.html +++ b/game-runtime/games/_wg1-gen/breakout/index.html @@ -49,6 +49,10 @@ // 就绪/错误标记初值。 window.__genBooted = false; window.__genBootError = null; + // W-G1 组C·首局门断言①「可玩≤2s」精确计时:页面侧 performance.now() 在「可交互首帧」(__genBooted=true) 打点, + // 写 window.__playableAtMs(= 自 navigationStart/timeOrigin 起的毫秒)。harness 直接读它, + // 规避 ① CDP 轮询 ~300ms 粒度抖动 ② waitBoot 固定 settle floor 对计时的污染——二者都会让 harness 侧计时失真。 + window.__playableAtMs = null; try { var G = window.__GameBundle; if (!G || typeof G.bootGameHost !== 'function') { @@ -69,6 +73,8 @@ // 可测性别名:守卫H 经此读游戏可观测状态(host.state() 透传 game._forensicsView().state;游戏未实现则返回 {phase:'booting'})。 // 宿主侧挂载,工厂仍零 window;与 ref 在 onReady 挂 __refForensics 同范式。 window.__gameState = function () { try { return host && typeof host.state === 'function' ? host.state() : null; } catch (_) { return null; } }; + // 首局门断言①打点:可交互首帧达成的墙钟(performance.now() 以 navigationStart 为 0 点),供 harness 读取判 ≤2s。 + try { window.__playableAtMs = (typeof performance !== 'undefined' && performance.now) ? performance.now() : null; } catch (_) {} window.__genBooted = true; // CDP 探活标记(区分「脚本没加载」与「boot 抛错」) }) .catch(function (e) { diff --git a/game-runtime/games/_wg1-gen/saolei/evidence/after-play.png b/game-runtime/games/_wg1-gen/saolei/evidence/after-play.png index dd3fe7ecb115983e87ca681a8af68f32645936fc..8e39d2e90b9e21c3d2a8e4e39c023ef6fed446b4 100644 GIT binary patch literal 34861 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

huNQHYyI?1It#mwJpFqP`9}T zV-U#};7pmSz{|B}cG!M{o+)QC&!Vp7h7C(&SIUBq{>G7XuIzns^VaWV`p3bE%G%3tDfxpI)*U4L{u%V3@RiNGz9VXecoFmQIBkP`) z6oGG?i$n7~W)n!Ono>K)aDp3Xc0OHMz>XFME<@}t#QHk?l~y;mB$>E^Gwr^+IZ(69 zZ4Qe+AjN>9ozq8vOLKaF3w)fp@un3V6L>1zGWEr-~u6&1TR-(kl>g%RnhwA4qJW(S@19u^*zss(=cPaC0Jb_jL;@_Dw* zmXP8RJKPDx z3B@;8R)J-yPq3}8{ggH9`q4sr7Z7-JLmn)XpYwyP#K4WzZ0nl? zgp=f|>%CTdec-gyz&`*#a&(lCNBhuMHEs3VsXF%U>0_q3V`?I%S3GZo=(|vr-vMe8 zkFI^cP{$3NRx}K^F>O3IQAHP9-#=nC{!G)M`5}3@GiD)f z^({EHh!ZEWO1;bTJ37wV04sbA_6H;H%_3UlXMRjMtbqm?VG4`RY)knn5LW-tlKu!? zfwBMdo??Ia$$#zRHc$IXa<#Jhb+onFwtbTA=#zI%R<2ezZryNKbiZwW`?lik zfiaKK0%*ChL=N?5DC52Ab_3{e|HoT-Aa;KeLxXs-W-coZ&p&w`vmW@B-67_rFhRUl z|8dkdD`LYssA`v0Xcl)C~a9BJv`m+yV)#G_U#)LN`cjV z`BRx2h%s`RaF9p9gWQoPPzbl37K;rFd<-)ih!u`s)Rxh1?tFp1jmRgnrZEicG$`&S0@v z9GR)E=6W#DVE-Cj)(GsC0nKk9L{1&#BEV|(*sbb=x;<9{Wf30Hz+QN&Ql`mAoR%Qt zb@GQC9zO1Yke6PQHcn-`9jzg%C6h4&XCHYf^t*HeBnFt;kU*+0g3c|(Ct{Wb4H9wR zasje#wX3wqCfsoeU@wtCG%?#tkSP>0Vso^ic;am}eCYUNwmgM)DRsjv8`wc|l4y*D zH?$0>@Q^v{b>XY}2%8LrA<4cu3)K_!voRbOkRY(@d#D8K5Vn>gfo(a!`qt<-I>H0!}uQZ$A|oOc}yx19M<| z^$Np^=R%5Gg;Z!)9l(zWoYhv8^%lm7Go@0L;l91NphsR%OvmQK>Tc6d%*yJ*i2Joa`F7wbz^&()l&^N!X2aq@%1DW^%4FbsfZ^`oAQ-dYb|S@rSg72KuqeDISBbe1M8 z5$so5{ zjRlx%en{uV!jABAGfrM!&=t?iK}2A!^1_27W(~(!2PurtJ-JydVBC^~31A4Ip~-LM zVGdEOy#LKrlRK$`XXGP-UijY1)=ezmK5w|`aNV;E;n6ZwHP&z?@+Cn$JNyJ{c=+xC zqL7t210kDR7V7GtWu>Vs3I=5Fh}(N%Z_k~i(!(`KO$M4%4Em62oIjRge*Zq9mcGd( zCIQ=-Q)%0f5|vE`TnV&y%MgxWp87pR>rJY~@>XCQ6p4EaU zX2jlmb!LGhg+3Zrx5394!(GqtvcKtd1f8i$&ai!n9o)jz74}xN){cN~L!U&)No364 zIWZuUa;*B^H%loy_hGyESGz5XWPOA9wKMqQJdaD;C%redhc%<8&njp~00asqh$q$N zS>?RmUNTEWaO{QqTNpKkN3%sZ{CLC*I3m_tEs^X}5G`^Spp3wMdj0|v zJ(>E(?(QGE^NA%>U%v@=2?+_gQIzU9aR~J7;TX)nOia};X>)6fJCmfhWUX1fMACMu z)uSZ|_#wd1M%B#refV0#o2A^S5=~ih2XxvR1dhB8Lvy(Plu_*)X^CvM{*t#B_B_3>i`uimBD?C!#W+48;JHgI#2=nS}OuPC$j zvTUP|+Di)2m&UJkrfMj`$|iDDQ8)V2!X?FY zzqwPJ%VMzyB0&S#64)$wp|2*QNS@bPUWsnQ^KvsD4Ef4Z?e6Dfso z(zyHt_&}hXDYNsjWJy)IBlFpS2VH?xY))xuLFy%=$w)KWr^huU9For+BZyZ90v9{x z-tBs;@v~j@^FMos(;6TC@i48XOP9$an*gu*cvJk&R@yi#ql9@=W2gaRLP9}jXKHoz z6DG+Km3|sz*=L-KVofAxQX9C)23Z4g&3C}~LyZ5|f}a1&)7x?Z4&zlsn@6#M+Q9sq z9p~BJ(E~&d<{f91AQ7oV2$D{+ATpC(0j?H{ntDZ^HcvEcT4HAV5M=+eynM2*^ZX;V~xP% zvoHuh92<#{W zTW~~HegQG`Mu2zIA1071I=xU!=uVXdTLvu&WCm^d3+Dd#SMc<-AEUQ7RQ+5UW73G*q$L@bicC6qq7=L+Rz#E>;tPu>EDt&d%0;@seh zuhy*(_aL{Ud1gThN{xjYE-<)(3$7P=A8FS+zU>Z!KINHb&(4g;oF1fh@fhL-$Hbxf zR(_59rp0zcBvEuDT4F7;vwS?Lq%Tu!w*mA!t)w%w>LdV<{s;kNNtYLUz?yuE8C!5%Rc=P~eZw zO}etc@l?Cu3S}dSi!|6foJLA={RTAVNlVM-ahfQm@%gpC0;%=OGM^5*&02sjVl?~E zVJuSPH@_*n2Ohf2VKdiX(QqZGGLijx)z-phB{#6U@e3C{mQ*^s^Vu`CG};!+w(ijC zi8&s@@WBn%k7dm${j+ds-2t(4Sy5MaCPtJ-za(sBTI+MJna*7Q>hV}&!!*q^==GPi zVq)s9S@6{fb3DecE51Ps?ZE;bZtnVbnqug+azT^FQ(5E`d0L-@yQlqR3#>wg#|wC+ z`tywge}@zEL_k{l1|@t<2);2#Q@yyMpz?T=d^ntI@E+K>Hk^!2Ow_qSqY)m!QaJd7 zxZEM*rCIZGS8kfR`u@3CehMHXfPJn>oL9f(lINO!XR%|=;$nB|@qpK6FLch`xv_vr zsJwM(|F`%aj*Kw9H004auLU7dNrc#5`aCbMm6*^6#EnHoi)p6?T4@>dLL;<4C;F9s zDtS4CD|U7`UApve-Z3R5WpVnIQkDFJFOAdWUgv(U@y2r=I~d9+UKfqLI=tcw7(jSB z>1x050{*Z4`+?~Hev|xdG3%l#Ek5sW1?vHcDy17@OWc2o_n=y{qtIZjK;z&QMbFpS z*>^#WmH?>>AhIG0hay5aKpDLF%hE)+aFtlGy+~)m7_nc_<=-~K;FsS~sU9NfFO%eu z?2C!L*Hm|Ye1s&oh)b%Bi%-on-(ga{D>D|^@mC5%`+1B%DaVTWWX(Tct-E!!$id=c zl1c)D@NsUgJ1II64(9!g&Nm9IVS|#!=X6m;#_~;1BtIYo5*V{|gE`IJYZs`+RD&6S zYy7(^?!ii`bqz#xV>I2;f0THQ`h%?&juo*YGA#YS3oxx5BR{D%fW)e~ooN7 zKhwWQPD`?WN|beNdGk%nVhe~L4;JE?-ywRy%aXvw$2W*cK*pSS(5RVv894KVrxnOt zLbH+CFLERiA6DLgDQjC3%`;NH5G<)=H^B>dN|2kZqPOaga)FG; zL5;{4G@i4m^x>j^dLyr*!aFVVEg0kAG^0HvGUg#5z?<QDH%n-I{18s>#0(-}b{>e7&3YfexsV9sM=LAkNY zYo`re%|x#Q`kUiRfkYzu3w%Lw=kCe2z=4`NSP=NBdiLUYK5J1c!?U z50VK2!H%-~#whTA@cGY!b(QulnPMYG)kMx24z^)4K@(+wp%WpZ{J9%jbA`-;Tz3|3 zBo4&XsIL) zMMS#V3}3{X%iG0l`gKU8lQyESQRXxr6G$9OMIk+L(bJznH41L7H&hU<)jyNtW_;yZ zL&<}Id-VP4kXVfk1LVQUDB-fUz0uyD5yY9_L;XgTW?qQ?3_Z1$>as{I?^%)ADtqaf zLv3JlaPEotejxZn!La(RiQR-s1;Y5(N>}BSk3+v-%Hb4{8vOypAMxYytKns4F9#{k zhpcrzt*6p`p;ACgN2+Q#Ob)BbDlXFgnllA?)ai4!3`kYNkukTBWAs)_L?#7qA9J%O zg`cp`r#F+mOr~-KxdvbdI6-K{0e*f-vY@lH5F_^=>Rw16f~+bV24oHON~5r$Wygzm za1D+6t=Tl4yOXU-GPTCC#TKI~Or)Gb98Rl6xzFXE6As>+Q1YG~`6tCK>mR!da=*9> zO24=Z2nTFpG^O<-#|%S<^My@sYNAR(X{5?p7#5=D>M0oHNQpA7e1G}0D zV&I>HPh<^XJRobHJCDbPW$K?U-#UA@Pt3^G^`1sR%@_V=9^j$6Ok6WOM*^8UfZtFp zvP{mJbH#7Uli^T2~H^LW0AM|91K9FGQju_rI&qDLFWFBJmiz^OcY6vI+`nKoxt( z2$8xOI!k`#XIPblbcAj~NM>;LRph?6xB8G58{ltkKiJDVTJZ^&+Q-c?LOu_E_Kd}y zamfyurO+!RvhD}XdT8I;8kwsGb|qFu z3HHd!G2+AJi4p-{P;(@`^LnWQb@xIlVWfAB^9kvMuLMOb?%w4)lDT`8#D`Gv3QOa) zJn$1}6Xi!AZXcRw`NyaZILO$!$Q?SVDh_Bzr%d8@U-7lT?BHLpyfS*DXMleT=1v3* zLgpuyqBkAVv0-s+P`oW4aPB|(5c;e<#ddKQXr;|-9v*wNW3r_+p0Ud}tq^qQJiBE1 z!bXuCU?G}c^kH?m|0~ybkowQzH)*-<1*_@H(NDWC&IZy-)eFPmZUsX-4(a< z?zgCFV~bZi+72oe(G*pR|12(bVS>V9BD;dN7n@%jpsz6b(w4{rF3lFgbkDaL6ta=C z=CZkB=}f*k?{h#24Y0|Pv#-7*YCxDr;50ax4fXpnonc7|?$1FJLIS6NW_f)2p7_fH z2=NpF4=5qV&pxXkyA`-*Xl8v4@eHZOR1QIycerO5|DJ{cncoCKnH!(=TB(k>sq0b7 zE5}?MOVYseagMM4`tM1-P&_9NjnFH8?b4-VhAQT>zIKo9)x^^aYK0OYYd|+SOmzW` zRf+3pBU73}4Z(*}@%6s2Aztu6P{u|kh5V=rw|`*cKYfQZvXQ}35_46whP(uj04HDu z#9N&Bp1P|jiyu!7YUSqmzXHlnML0+d#K)MWLZ%rgs zMN5!v)vV|Tmks(fV`*FN0VfyGdG^(z3{YD8o)LFVwtSsdw;yYG7v&2wj<&&V8R?7Z zQNDnU^hoU3GqFl#Ih4V^)`f%R{HO#6(sRWv8PO*7VHx;k=KUDg%I5WN3I#;@pXEZR z%HFw?3P`@h`#7*q<$!G5=&gwXIW(_z36LLp3az<#d1*b9UcFNM z+34aV`%lsC{_#%#&+g}60Js0n+DW`}EPmz%{OeQweuQ@a9Xb9pYhOwC*a|y9y!!O< zO@HY8r3k|K0GQex)ggCJ;%Mp7x+EGOqPu>Oq1%&k8$ zuvthcCLT~}0=G=jsFspert1I1E&Y!ia(B#2dH(K#dz`{GfgbaP0|k$2?AkQw0#3Nz z@9lhNyS3C@&btf->;(1|#}-%{w1ZJ?bkH?o05vOYED1#or|c55vu_9#CnrA|YfJ?H zZW|?nromlrP1Nhd9ydnUeq4-*P&AA6_8vZb+DhEzoB?pGfFu)IS@77a;u-l@M8Tju z)1}W}L*L&bp`!ACdhoeHRh8VR++rFxQJbn}$wJLD74|eBA2Wc5NiKCal9B|xd0z*wezv?{DaJ>kOC>$OU zTs+2sEC~WoJbc5J1uZk=!Fsq@^N8#~PzaV?o|tp(B${yinZPijJAt@;rU4GuBB#Nl8ad zEobJ8+va3RlVo8z4=CVOfO0Y+)QU5obJ_QLtX!!nOgl2snKEO`J8QUElpze`ab8AF zs~3Vc!LYD6Xs`wF|6yralQ8Grg+e{6qNLfCW~q|7_Kbm;?Cz;Hi?6lPH*>dB)6U*$ zN%Bq36}qP$!yxzYphOD0smUnlhpvSW-Pm_GIt1!(CKS-yi^^ka(BuB`(dx+_ViOP9Z- zcjeNNpo=%gEMw#>9Bp@2!awO@9f4jEQyf1H{hGV0&>I~&0n*jk>uF$fQoqU@Iu6g4 z>=hY*g4Ov=owqHy{-z+#YZs=Lw(vFUgwPC6N8h`5iORuXa)EJ4-)wLHJKK^*QwHJL z%eHqwZ}WUu`Asfp;us6*ye61^6D_tfFq{R(J^7t2ouBERz7lb6bGF3#D0^0*zfv(6 zCbNCrLfJz}HBbv)mZ2QJnu)EfMCq5Tl0lx}uJ5<7V2}}xz&@jHcO8D*Gpe$!(JZkP zR$4UMZig)Zt?irh!7Re*tTMOjRx`bke7CFbW!iO|JbBs@84iLCkxb`-og4jA@bWU+ z=gVi+)DAZVeEDJr27UtFaPhko@ouN%qP(xT@a4;w2_a_C_!D`3cnUP`0d4H0KxSyL zdibjm7!Rj5zIv}v(sA7;L4+{QeKFPk>sWLg2N&02_*qfW{vzA?Tlc{oYH*MWizk!P zMnM0i_>;NQz3UY+xgvy%lbO~gLUGkB$%omj_5?{ubD9Dg8cuv$#9+v)SF9q!;HyDE z@8DyY1n{Q zk+PUpHPo4BQSxm8;Tx+xG>dH8mvp-yQxAn|?Z(*~t<8GWhwW$yM3^?dd`KnzM$WGl z4BqI|`SMc!_T9UAy`6=y=ra(+jN`Ehs)!dqi-|dRyPD7}w(X5pR?}i;o9-x?6406? zd!wF$J}|Krw^BAv&e>-QRyz52s_H^PgUqaH)(9u8?k70y+7VGHFgPOn{s9CSW^-NK z*_1?IH~$XY*x03Sy2E35bvnz7gLpA;&D_OhBACVO9j(mf-~+l|W{QIX?CiB>CZk{k zW6lWA_GtJ30W<(!N@>G8+tZ_4g{3>2(+{JqqGotzTHZ`ge5R|ZzW8ZGz^qAjZIjNtB_gdw%%c|#}Ri5!g1c_*%lUZ!1Rdw_FJIc zyHlv2FQGVf(8ysFXv&$8z_RF6MR6L8$AH}&1tSWdxIYM&ypoc_*(_n-G4koU?=G0; zDg6HZ1u#^pNpwfIQ1!6FSwGZ^GK1C&jVY>N!qWpgCErE6deFyywTh}7XC|4b`fO`g zngW=;BpyG$=C!w#Ow3$537YkX!R|xxMn0?+(I15uv$GG`j_9V&@`n^!Uv;(ufcfPs z=hCIdn9`oA@s^(zq%Njh z!q12%^!8RUIhzE129sa*#-c~-Ho>3|tG!(?1CR5vbt#`#YvfZ8Ffk47=6D2J4ghwC zLiCQ)#;9Cu53F3Gekb7p@lt&~x3Tjx%M~-aE+e&T*G^DVa~f5c)NJ~R=_=vhBlEXd&inj*)FaFV!eEbn=hSqI& zqtH^5gGa*cus~NNI1>QYy690vRI}_=VYMMclP%*Cd)w&Yk0JAbRVP?Ws`xj)B4U=BZ5(=VK9PkEJ2P~Y|g4XZzoKTNgDKuObsO^ZPfRD%imlyWc!u{ zVmwa<6+8Fb>(F-@0uAB8v_4_joK2%xCijP$THz%ZMJI7EDcA$6(d7rGGJ8lc>F1eu z&6R6W@qWsD2F3=aBQKXY@tTC(EL~^Rk_BTT;xf^z{kkuPix1AnI`68iriofNOCbt# zZC0iP@MH!+Ux?+id^sB*pH;>5*pGYev}s9mq!n%YMG5+6ZX~-am#q&^(Rk?QU(Vc^ z023TmaZ@G6=}gR+Z+I^4Y}pq(p|xB6DrA-(QW$`Hzk%%evBjxedW@C@)^S|K+_60$ zKD>sZ1uWltpUIaV?Jy9&X&DVU!CN^wyCfAxV ztNY9A@^syN&yLKUI_{Fj=)(0kahiLJ_11M8m4JF=w>WZ3w4H4^0sNpK+XlDWbVj>T zEgTH;96;}^N@$hq^Lnluwt+WGFR|_rWVhiB{AoSIMWTZ^SQP^o(Ky_=*MR&Dk2SlIs6~2?)`(9_zzJ+0$u>4xHbe0 z#(r~EF5$JN0TKW%qd_T^?CitZn%kBpOn3AsImjg~W}l{#!cW%1l}`ad2CBUcm^=UF z>jM8XA>Dr_6#Byp`v3WG{k`@dsmIAC{!R!Y_Ex%h;RbZ=e{3m`Gbfi&GiU?~qO;X}tz1kgEFQs|cA5vU@V75e)FfA7QJ=izU?_}f1G uZ72VWaBv!6)ZQMKkf;#&4-pQH4?u?ppGDH9GX&xAOG#e!Vy5gZ@BatL-^&F6 literal 36214 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

vF46B~^Q<<9dB% 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 C1`w(M diff --git a/game-runtime/games/_wg1-gen/saolei/evidence/first-paint.png b/game-runtime/games/_wg1-gen/saolei/evidence/first-paint.png index 54069ff9789dcfdcd6d01e34f9b64f49fa2f4834..b521022f6b19a0226f7c21878d90c21e8670273f 100644 GIT binary patch literal 22130 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 literal 23073 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 diff --git a/game-runtime/games/_wg1-gen/tictactoe/evidence/first-paint.png b/game-runtime/games/_wg1-gen/tictactoe/evidence/first-paint.png index fd36d7ab187e5385c8305d70feaa5162f9f9cfb1..b302aae8b122ecfeb0822697adc46babd2a521bf 100644 GIT binary patch literal 11625 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