Guard browser OPFS custom session path locals

This commit is contained in:
2026-06-14 01:44:29 +08:00
parent ef4d1c7829
commit 25d8672f57
2 changed files with 66 additions and 3 deletions

View File

@@ -848,3 +848,55 @@ 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 字符串。
二十、2026-06-14 继续执行记录browser OPFS custom session path locals guard
本轮按上一条下一步建议继续扫描 OPFS custom session load/save blocks 中的重复 path
派生,范围仍只触及 `wasm-port/tests/browser/interp_smoke.html` 的 browser/OPFS test
glue。
完成内容:
- 扩展 `opfsCustomSessionPaths(...)`,让它接收调用方已经计算好的
parameter/tool-table WASM path
- INI-named session 与 explicit session 的 staging 断言均复用现有
`iniFileParameterWasmPath` / `iniFileToolTableWasmPath` 与
`explicitParameterWasmPath` / `explicitToolTableWasmPath`
- 收敛 custom session path helper 内重复的 `opfsCustomSessionWasmPath(...)`
filename-derived WASM path 派生;
- custom parameter/tool-table filename 输入、OPFS path、WASM path 字符串均未改变;
- 未改变 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
```
下一步建议:
继续小批量 browser OPFS test glue guard。优先扫描 `interp_smoke.html` 中
custom session saved parameter/tool-table readback blocks 是否还能统一为
`verifyOpfsReadback(...)` 或已有 saved-text helper 调用;只改测试胶水,不改变
custom filename 输入、OPFS path、WASM path 字符串或保存/读取行为。

View File

@@ -4588,7 +4588,14 @@
);
}
function opfsCustomSessionPaths(machineId, parameterFilename, toolTableFilename, iniWasmPath) {
function opfsCustomSessionPaths(
machineId,
parameterFilename,
toolTableFilename,
iniWasmPath,
parameterWasmPath,
toolTableWasmPath,
) {
return {
opfs: {
parameters: opfsMachineFilePath(machineId, parameterFilename),
@@ -4596,8 +4603,8 @@
},
wasm: {
ini: iniWasmPath,
parameters: opfsCustomSessionWasmPath(parameterFilename),
toolTable: opfsCustomSessionWasmPath(toolTableFilename),
parameters: parameterWasmPath,
toolTable: toolTableWasmPath,
},
};
}
@@ -9495,6 +9502,8 @@
iniFileParameterFilename,
iniFileToolTableFilename,
iniFileIniWasmPath,
iniFileParameterWasmPath,
iniFileToolTableWasmPath,
),
);
verifyOpfsLoadResult(
@@ -9671,6 +9680,8 @@
explicitParameterFilename,
explicitToolTableFilename,
iniOverrideIniWasmPath,
explicitParameterWasmPath,
explicitToolTableWasmPath,
),
);
verifyOpfsLoadResult(