From caa6fd98c47b6061326b5b990a883b63b94bf244 Mon Sep 17 00:00:00 2001 From: wangdequan Date: Sun, 14 Jun 2026 00:18:34 +0800 Subject: [PATCH] Guard browser OPFS session wasm map helper --- text7.txt | 53 +++++++++++++++++++++++ wasm-port/tests/browser/interp_smoke.html | 24 +++++----- 2 files changed, 67 insertions(+), 10 deletions(-) diff --git a/text7.txt b/text7.txt index 9a755c0..d9e149d 100644 --- a/text7.txt +++ b/text7.txt @@ -2630,3 +2630,56 @@ interpreter、INI、tool、parameter 或 runtime semantics。 ```bash git status --short && git log -5 --oneline && tail -n 120 text7.txt && awk '/^[一二三四五六七八九十百]+、/ {print}' text7.txt | sort | uniq -d ``` + +四十五、2026-06-14 继续执行记录:browser OPFS session wasm map helper guard + +1. 本批目标。 + +继续 staged path guard inventory 第四十轮,收敛 ordinary/random OPFS session 的 +session staging WASM path map。 + +2. 已完成改动。 + +- browser smoke 新增 `opfsSessionWasmPaths(...)`; +- ordinary `browser-interp` session staging 的 `wasm` map 改为走 helper; +- random toolchanger session staging 的 `wasm` map 改为走同一 helper; +- runtime input 仍保留显式局部 constants; +- 未修改 OPFS bridge behavior、file-service、path-model、SDK planner、interpreter 或 + LinuxCNC-owned runtime semantics。 + +涉及文件: + +```text +wasm-port/tests/browser/interp_smoke.html +``` + +3. 已完成验证。 + +```bash +git diff --check +SKIP_INI_BUILD=1 SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_interp_browser.sh +wasm-port/tools/verify_vendor_sync.sh +wasm-port/tools/verify_no_standalone_cnc_semantics.sh +SKIP_INTERP_BUILD=1 wasm-port/tests/wasm/node/verify_interp_wasm.sh +SKIP_INTERP_BUILD=1 wasm-port/tests/wasm/node/verify_sim_configs_inventory_wasm.sh +wasm-port/tests/host/verify_host_smokes.sh +``` + +提交建议: + +```text +Guard browser OPFS session wasm map helper +``` + +4. 下一步工作建议。 + +继续 staged path guard inventory 第四十一轮,优先扫描 OPFS saved machine-file +readback 的重复 `verifyExpectedOutput(...)` text verification,判断是否适合按 +parameter/tool-table saved readback helper 小批收敛;仍只加 browser/OPFS boundary +guard,不改变 LinuxCNC-owned interpreter、INI、tool、parameter 或 runtime semantics。 + +下一轮第一条命令仍保持: + +```bash +git status --short && git log -5 --oneline && tail -n 120 text7.txt && awk '/^[一二三四五六七八九十百]+、/ {print}' text7.txt | sort | uniq -d +``` diff --git a/wasm-port/tests/browser/interp_smoke.html b/wasm-port/tests/browser/interp_smoke.html index 52da6c9..e0b8d9e 100644 --- a/wasm-port/tests/browser/interp_smoke.html +++ b/wasm-port/tests/browser/interp_smoke.html @@ -4549,6 +4549,10 @@ return `/work/${filename}`; } + function opfsSessionWasmPaths(ini, parameters, toolTable) { + return { ini, parameters, toolTable }; + } + function opfsCustomSessionPaths(machineId, parameterFilename, toolTableFilename, iniWasmPath) { return { opfs: { @@ -9169,11 +9173,11 @@ loadedSession, browserInterpMachineId, { - wasm: { - ini: browserInterpIniWasmPath, - parameters: browserInterpParameterWasmPath, - toolTable: browserInterpToolTableWasmPath, - }, + wasm: opfsSessionWasmPaths( + browserInterpIniWasmPath, + browserInterpParameterWasmPath, + browserInterpToolTableWasmPath, + ), }, ); verifyExpectedOutput( @@ -9340,11 +9344,11 @@ loadedRandomSession, browserRandomMachineId, { - wasm: { - ini: browserRandomIniWasmPath, - parameters: browserRandomParameterWasmPath, - toolTable: browserRandomToolTableWasmPath, - }, + wasm: opfsSessionWasmPaths( + browserRandomIniWasmPath, + browserRandomParameterWasmPath, + browserRandomToolTableWasmPath, + ), }, ); verifyExpectedOutput(