Guard browser OPFS tool-table result adapter

This commit is contained in:
2026-06-14 07:22:59 +08:00
parent 58215c24cc
commit 6ac7cc8953
2 changed files with 71 additions and 6 deletions

View File

@@ -781,3 +781,64 @@ host_wasm_opfs_browser_smokes=ok
继续小批量 browser test glue guard。优先扫描 ordinary OPFS tool-table load/save
result 调用点是否值得新增 `opfsToolTableResultLinesForTool(...)` object adapter
只改测试胶水不改变输入、OPFS path、WASM path 字符串或保存/读取行为。
十七、2026-06-14 继续执行记录browser OPFS tool-table result object adapter guard
本轮按上一条下一步建议继续收敛普通 OPFS tool-table load/save result helper 调用点
的参数展开,范围仍只触及
`wasm-port/tests/browser/interp_smoke.html` 的 browser/OPFS test glue。
完成内容:
- 新增 `opfsToolTableResultLinesForTool(...)`,从显式 tool object locals 转发到
`opfsToolTableResultLines(...)`
- direct `browser-interp` ordinary tool-table load/save result 调用点改为复用
`opfsToolTableResultLinesForTool(...)`
- INI-named 与 explicit custom session ordinary tool-table load/save result 调用点改为
复用 `opfsToolTableResultLinesForTool(...)`
- load result 的 front angle、back angle、orientation、comment 与
`tool_index_for_tool_2=1` 等 extra lines 仍保留在调用点,保持语义边界外显;
- adapter 只转发已显式保存的 object 字段,不推导 LinuxCNC-owned tool-table 格式;
- 未改变任何 expected 字符串、输入、OPFS path、WASM path 字符串或 save/read/load
行为;
- 未改变 staging path 模型、OPFS bridge behavior、file-service、SDK planner、
interpreter、INI、tool、parameter 或 LinuxCNC-owned runtime semantics。
验证已通过:
```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
browser_interp_smoke=ok
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
host_wasm_opfs_browser_smokes=ok
```
备注:
- 当前 sandbox 会拦截本地 HTTP server socket bind`verify_host_smokes.sh` 首次在
browser smoke 阶段因 `PermissionError: [Errno 1] Operation not permitted` 失败;
- 已按规则授权重跑 `wasm-port/tests/host/verify_host_smokes.sh`,重跑通过。
下一步建议:
继续小批量 browser test glue guard。优先扫描普通 OPFS tool-table object helper
是否还能合并命名或减少重复 adapter如果收益不明显转向 parameter result/text 的
object adapter 收敛只改测试胶水不改变输入、OPFS path、WASM path 字符串或
保存/读取行为。