fix(tier2): play-phaser harness 从 game-runtime 解析 ws

harness 在 tier2/(game-runtime 外)、play 步 cwd=仓根,裸 require('ws') 解析不到 game-runtime/node_modules/ws。改:createRequire(../../game-runtime/package.json) 显式解析(同 browser-evidence 口径)。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
zizi 2026-06-23 20:19:01 +00:00
parent b5acf7c4b5
commit 9f95ec6612

View File

@ -56,8 +56,10 @@ function loadBrowserDeps() {
// 复用纯计算口径 + CDP 会话类 + 像素抓取/截图(test/harness/browser-evidence.cjs;引擎无关,照搬)。
H = require(path.resolve(__dirname, '../../game-runtime/test/harness/browser-evidence.cjs'));
({ CdpSession, captureImageData, saveScreenshot, fnv1a32 } = H);
// CDP 需 ws(mini-desktop 的 game-runtime 已 npm i ws;6c6g 不需要、也不真跑)。
WebSocket = require('ws');
// CDP 需 ws。ws 装在 game-runtime/node_modules,而本 harness 在 tier2/ 外、play 步 cwd=仓根,
// 裸 require('ws') 按模块位置(tier2/harness)解析不到 → 从 game-runtime 显式解析(与上方 browser-evidence 同口径)。
const grRequire = require('node:module').createRequire(path.resolve(__dirname, '../../game-runtime/package.json'));
WebSocket = grRequire('ws');
}
/** 纯 Promise 延时(不走被拦的 sleep 命令)。 */