郑博文
|
3b219a442d
|
test(tools): cursor_proof + proof_common 抽取 + rel_mouse 适配 v5/双屏与污染修复
4b 光标覆盖层验收(V-D1/D3/D6/D7)+ 4a 建议 2 的公共库沉淀:
- proof_common.ps1:抽 landscape/rel_mouse 已验证的观测面 helper
(唤醒只从证明过的隐藏态、正向配对判隐藏、N25 唯一临时文件、按文案取按钮、
静置门控 + SetCursorPos 读回自校验、内存预检、R-7 新鲜守卫)。
老 proof 本轮**不迁移**(改 4 个已验证脚本而不全重跑=假绿风险,登记下轮卫生项)
- cursor_proof.ps1:真机判据
V-D1 截图青簇质心 vs CursorMarker 映射 ±6px(含近原点 (48,48),Some(0,0)≠None 由单测+golden 锁)
V-D3 静止桌面跳转后 900ms 内标记跟随(覆盖 500ms 保活重发带新鲜 cursor)
V-D7 指针进左侧副屏负 X → agent 折叠 None → 无青簇(本机双屏白送的真实判据)
reject 阶段 V-D6:旧 v4 APK 连 v5 agent → 屏幕出「协议版本不一致」+ detail client=4,server=5
实测全绿:4 点偏差 ≤0.6px、跟随 0.5px、副屏无簇、拒绝判据命中
- rel_mouse_phone_proof.ps1:适配 v5 + 修两处 harness 缺陷(都是本轮回归实测逼出的)
① HUD v4 断言→v5(PROTO_LABEL 配对);② V-B2 R7 期望值从写死 1920 派生
改为按实时桌面 / 动态算(桌面已漂到 2560x1440,旧写死值假报 575px,
违反 AGENTS.md 坐标期望按当前分辨率重算)
③ 模式守卫改为无条件 Set-Mode relative(旧 HUD.Contains(绝对) 在 HUD 读空时
静默跳过,上一轮 throw 残留的 relative_mode=false 污染了整个 step2——
绝对模式 DOWN 发绝对移动是正确产品行为,被 2c 误读成 teleport)
④ Set-Mode 唤醒 miss 并入 try 预算(原来单次重读即 throw,烧掉整脚本)+ 失败截图证据
实测:R7 误差 1px、2c maxJump=0、长按右键 0→1、全链路绿
|
2026-11-02 12:39:23 +08:00 |
|