Guard browser OPFS load result helper

This commit is contained in:
2026-06-14 00:53:17 +08:00
parent 6e8778f4c3
commit 09855d37f7
2 changed files with 71 additions and 21 deletions

View File

@@ -325,3 +325,49 @@ host_wasm_opfs_browser_smokes=ok
`loadedSession.toolTable.result` 等形态足够一致,可抽一个只处理 result 精确校验的
helper。仍不改变 expected text不触碰 runtime bridge、file-service 或 LinuxCNC
语义。
九、2026-06-14 继续执行记录browser OPFS load result helper guard
本轮按上一条下一步建议继续推进 OPFS load result verification 小批收敛,范围仍只触及
`wasm-port/tests/browser/interp_smoke.html` 的 browser/OPFS test glue。
完成内容:
- 新增 `verifyOpfsLoadResult(...)`,统一 OPFS load helper result 的
`verifyExpectedOutput(...)` 精确校验入口;
- 收敛 7 个 `loadedSession.*.result` / `loadedIni*Session.*.result` 的 load 校验调用;
- expected output 行内容未改,只把 `.result` 读取和 `join("\n")` 胶水放入 helper
- 未改变 OPFS bridge behavior、file-service、path-model、SDK planner、interpreter、
INI、tool、parameter 或 LinuxCNC-owned runtime semantics。
验证已通过:
```bash
git diff --check
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
SKIP_INI_BUILD=1 SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_interp_browser.sh
wasm-port/tests/host/verify_host_smokes.sh
```
关键输出:
```text
vendor sync up to date
standalone CNC semantics guard complete
interp_wasm_node_smoke=ok
sim_configs_wasm_node_inventory_executed=28
sim_configs_wasm_node_inventory_passed=28
sim_configs_wasm_node_inventory_skipped=131
sim_configs_wasm_node_inventory_unexpected_fail=0
browser_interp_smoke=ok
host_wasm_opfs_browser_smokes=ok
```
下一步建议:
继续沿 browser/OPFS boundary guard 方向推进,但进入更细一层的 load/save 对称收敛审视:
检查 `opfs_saved_*_text` 与 `opfs_load_*` 附近是否还能抽出更小的 pair helper前提是
不让 helper 掩盖 expected text 或改变 direct-file 与 machine-file 的边界。