diff --git a/text8.txt b/text8.txt index 3ee3cff..379dd6e 100644 --- a/text8.txt +++ b/text8.txt @@ -799,3 +799,52 @@ host_wasm_opfs_browser_smokes=ok 继续小批量扫描 browser staging path literal。优先看 custom session 中 `opfsCustomSessionWasmPath(...)` 调用是否还有重复 filename-derived WASM path 可用 局部变量收敛;只改测试胶水,不改变 custom filename 输入或 path 字符串。 + +十九、2026-06-14 继续执行记录:browser OPFS custom session wasm path locals guard + +本轮按上一条下一步建议继续扫描 custom session 中 filename-derived WASM path 的重复调用, +范围仍只触及 `wasm-port/tests/browser/interp_smoke.html` 的 browser/OPFS test glue。 + +完成内容: + +- 为 INI-named session 增加 `iniFileParameterWasmPath`、 + `iniFileToolTableWasmPath` 局部变量; +- 为 explicit session 增加 `explicitParameterWasmPath`、 + `explicitToolTableWasmPath` 局部变量; +- 收敛 load/save staging 调用中重复的 `opfsCustomSessionWasmPath(...)` 调用; +- custom parameter/tool-table filename 输入仍在测试处外显,实际 `/work/` + staging path 字符串未改变; +- 未改变 staging path 模型、OPFS bridge behavior、file-service、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 staging path literal guard。优先扫描 `interp_smoke.html` 中 +OPFS custom session load/save blocks 是否还有重复的 OPFS path locals 可收敛; +只改测试胶水,不改变 custom filename 输入、OPFS path 或 WASM path 字符串。 diff --git a/wasm-port/tests/browser/interp_smoke.html b/wasm-port/tests/browser/interp_smoke.html index 38dbe6a..1ec90c5 100644 --- a/wasm-port/tests/browser/interp_smoke.html +++ b/wasm-port/tests/browser/interp_smoke.html @@ -9439,6 +9439,8 @@ const iniFileParameterFilename = "browser-custom.var"; const iniFileToolTableFilename = "browser-custom-tool.tbl"; const iniFileIniWasmPath = opfsMachineIniWasmPath(iniFileMachineId); + const iniFileParameterWasmPath = opfsCustomSessionWasmPath(iniFileParameterFilename); + const iniFileToolTableWasmPath = opfsCustomSessionWasmPath(iniFileToolTableFilename); const browserIniFileTextPaths = await saveMachineTextFiles(iniFileMachineId, { ini: [ "[EMC]", @@ -9480,8 +9482,8 @@ { iniSdk: ini, iniWasmPath: iniFileIniWasmPath, - parameterWasmPath: opfsCustomSessionWasmPath(iniFileParameterFilename), - toolTableWasmPath: opfsCustomSessionWasmPath(iniFileToolTableFilename), + parameterWasmPath: iniFileParameterWasmPath, + toolTableWasmPath: iniFileToolTableWasmPath, }, ); assertOpfsSessionStaging( @@ -9526,7 +9528,7 @@ savedIniNamedParameters, iniFileMachineId, iniFileParameterFilename, - opfsCustomSessionWasmPath(iniFileParameterFilename), + iniFileParameterWasmPath, ); verifyOpfsSaveResult( "opfs_save_ini_named_parameter_file", @@ -9584,7 +9586,7 @@ savedIniNamedToolTable, iniFileMachineId, iniFileToolTableFilename, - opfsCustomSessionWasmPath(iniFileToolTableFilename), + iniFileToolTableWasmPath, ); verifyOpfsSaveResult( "opfs_save_ini_named_tool_table", @@ -9611,6 +9613,8 @@ const explicitParameterFilename = "browser-explicit.var"; const explicitToolTableFilename = "browser-explicit-tool.tbl"; const iniOverrideIniWasmPath = opfsMachineIniWasmPath(iniOverrideMachineId); + const explicitParameterWasmPath = opfsCustomSessionWasmPath(explicitParameterFilename); + const explicitToolTableWasmPath = opfsCustomSessionWasmPath(explicitToolTableFilename); const browserIniOverrideTextPaths = await saveMachineTextFiles(iniOverrideMachineId, { ini: [ "[EMC]", @@ -9653,9 +9657,9 @@ iniSdk: ini, iniWasmPath: iniOverrideIniWasmPath, parameterFilename: explicitParameterFilename, - parameterWasmPath: opfsCustomSessionWasmPath(explicitParameterFilename), + parameterWasmPath: explicitParameterWasmPath, toolTableFilename: explicitToolTableFilename, - toolTableWasmPath: opfsCustomSessionWasmPath(explicitToolTableFilename), + toolTableWasmPath: explicitToolTableWasmPath, }, ); assertOpfsSessionStaging( @@ -9712,7 +9716,7 @@ savedExplicitParameters, iniOverrideMachineId, explicitParameterFilename, - opfsCustomSessionWasmPath(explicitParameterFilename), + explicitParameterWasmPath, ); verifyOpfsSaveResult( "opfs_save_explicit_parameter_file", @@ -9758,7 +9762,7 @@ savedExplicitToolTable, iniOverrideMachineId, explicitToolTableFilename, - opfsCustomSessionWasmPath(explicitToolTableFilename), + explicitToolTableWasmPath, ); verifyOpfsSaveResult( "opfs_save_explicit_tool_table",