Guard browser OPFS custom session tool-table value locals
This commit is contained in:
53
text8.txt
53
text8.txt
@@ -1531,3 +1531,56 @@ host_wasm_opfs_browser_smokes=ok
|
|||||||
继续小批量 browser OPFS test glue guard。优先扫描 custom session 中 tool-table
|
继续小批量 browser OPFS test glue guard。优先扫描 custom session 中 tool-table
|
||||||
value groups 是否还能和 load/save/readback helper 对齐为 locals;只改测试胶水,
|
value groups 是否还能和 load/save/readback helper 对齐为 locals;只改测试胶水,
|
||||||
不改变 tool-table 输入、custom filename 输入、OPFS path、WASM path 字符串或保存/读取行为。
|
不改变 tool-table 输入、custom filename 输入、OPFS path、WASM path 字符串或保存/读取行为。
|
||||||
|
|
||||||
|
三十三、2026-06-14 继续执行记录:browser OPFS custom session tool-table value locals guard
|
||||||
|
|
||||||
|
本轮按上一条下一步建议继续收敛 custom session 中 tool-table value groups,范围仍只
|
||||||
|
触及 `wasm-port/tests/browser/interp_smoke.html` 的 browser/OPFS test glue。
|
||||||
|
|
||||||
|
完成内容:
|
||||||
|
|
||||||
|
- 为 INI-named session 增加 `iniNamedToolTableValues`、
|
||||||
|
`iniNamedToolTableLoadValues`、`iniNamedToolTableReadbackValues` 局部常量;
|
||||||
|
- INI-named session 的 tool-table seed text、load result expected lines、save
|
||||||
|
result expected lines、saved tool-table readback expected lines 均复用这些局部常量;
|
||||||
|
- 为 explicit override session 增加 `explicitToolTableValues`、
|
||||||
|
`explicitToolTableLoadValues`、`explicitToolTableReadbackValues` 局部常量;
|
||||||
|
- explicit override session 的 tool-table seed text、load result expected lines、
|
||||||
|
save result expected lines、saved tool-table readback expected lines 均复用这些局部常量;
|
||||||
|
- seed、load、readback 的 tool-table value 字符串仍分开显式声明,未新增格式转换逻辑;
|
||||||
|
- custom parameter/tool-table filename 输入、OPFS path、WASM path 字符串与
|
||||||
|
save/read 行为均未改变;
|
||||||
|
- 未改变 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。优先扫描 custom session 中 filename groups
|
||||||
|
是否还能和 path/load/staging helper 对齐为 locals;只改测试胶水,不改变 custom
|
||||||
|
filename 输入、OPFS path、WASM path 字符串或保存/读取行为。
|
||||||
|
|||||||
@@ -9566,10 +9566,13 @@
|
|||||||
iniFileParameterFilename,
|
iniFileParameterFilename,
|
||||||
opfsParameterSeedText(...iniNamedInitialParameterValues),
|
opfsParameterSeedText(...iniNamedInitialParameterValues),
|
||||||
);
|
);
|
||||||
|
const iniNamedToolTableValues = ["8", "8", "4.5", "0.5", ";browser custom tool"];
|
||||||
|
const iniNamedToolTableLoadValues = ["8", "8", "4.5", "0.5", "browser custom tool"];
|
||||||
|
const iniNamedToolTableReadbackValues = ["8", "8", "+4.500000", "+0.500000", ";browser custom tool"];
|
||||||
await writeOpfsMachineFile(
|
await writeOpfsMachineFile(
|
||||||
iniFileMachineId,
|
iniFileMachineId,
|
||||||
iniFileToolTableFilename,
|
iniFileToolTableFilename,
|
||||||
opfsToolTableSeedText("8", "8", "4.5", "0.5", ";browser custom tool"),
|
opfsToolTableSeedText(...iniNamedToolTableValues),
|
||||||
);
|
);
|
||||||
const loadedIniFileSession = await loadMachineSessionFromOpfs(
|
const loadedIniFileSession = await loadMachineSessionFromOpfs(
|
||||||
interp,
|
interp,
|
||||||
@@ -9633,10 +9636,10 @@
|
|||||||
verifyOpfsLoadResult(
|
verifyOpfsLoadResult(
|
||||||
"opfs_load_ini_named_tool_table",
|
"opfs_load_ini_named_tool_table",
|
||||||
loadedIniFileSession.toolTable,
|
loadedIniFileSession.toolTable,
|
||||||
opfsToolTableResultLines("load", "8", "8", [
|
opfsToolTableResultLines("load", iniNamedToolTableLoadValues[0], iniNamedToolTableLoadValues[1], [
|
||||||
"tool_1.z=4.5",
|
`tool_1.z=${iniNamedToolTableLoadValues[2]}`,
|
||||||
"tool_1.diameter=0.5",
|
`tool_1.diameter=${iniNamedToolTableLoadValues[3]}`,
|
||||||
"tool_1.comment=browser custom tool",
|
`tool_1.comment=${iniNamedToolTableLoadValues[4]}`,
|
||||||
]),
|
]),
|
||||||
);
|
);
|
||||||
const savedIniNamedToolTable = await saveMachineToolTableToOpfs(
|
const savedIniNamedToolTable = await saveMachineToolTableToOpfs(
|
||||||
@@ -9654,12 +9657,12 @@
|
|||||||
verifyOpfsSaveResult(
|
verifyOpfsSaveResult(
|
||||||
"opfs_save_ini_named_tool_table",
|
"opfs_save_ini_named_tool_table",
|
||||||
savedIniNamedToolTable,
|
savedIniNamedToolTable,
|
||||||
opfsToolTableResultLines("save", "8", "8"),
|
opfsToolTableResultLines("save", iniNamedToolTableValues[0], iniNamedToolTableValues[1]),
|
||||||
);
|
);
|
||||||
await verifyOpfsReadback(
|
await verifyOpfsReadback(
|
||||||
"opfs_saved_ini_named_tool_table_text",
|
"opfs_saved_ini_named_tool_table_text",
|
||||||
loadedIniFileSession.toolTable.opfsPath,
|
loadedIniFileSession.toolTable.opfsPath,
|
||||||
opfsToolTableTextLines("8", "8", "+4.500000", "+0.500000", ";browser custom tool"),
|
opfsToolTableTextLines(...iniNamedToolTableReadbackValues),
|
||||||
);
|
);
|
||||||
|
|
||||||
const iniOverrideMachineId = "browser-ini-override-session";
|
const iniOverrideMachineId = "browser-ini-override-session";
|
||||||
@@ -9686,10 +9689,13 @@
|
|||||||
explicitParameterFilename,
|
explicitParameterFilename,
|
||||||
opfsParameterSeedText(...explicitInitialParameterValues),
|
opfsParameterSeedText(...explicitInitialParameterValues),
|
||||||
);
|
);
|
||||||
|
const explicitToolTableValues = ["9", "9", "5.5", "0.625", ";browser explicit tool"];
|
||||||
|
const explicitToolTableLoadValues = ["9", "9", "5.5", "0.625", "browser explicit tool"];
|
||||||
|
const explicitToolTableReadbackValues = ["9", "9", "+5.500000", "+0.625000", ";browser explicit tool"];
|
||||||
await writeOpfsMachineFile(
|
await writeOpfsMachineFile(
|
||||||
iniOverrideMachineId,
|
iniOverrideMachineId,
|
||||||
explicitToolTableFilename,
|
explicitToolTableFilename,
|
||||||
opfsToolTableSeedText("9", "9", "5.5", "0.625", ";browser explicit tool"),
|
opfsToolTableSeedText(...explicitToolTableValues),
|
||||||
);
|
);
|
||||||
const loadedIniOverrideSession = await loadMachineSessionFromOpfs(
|
const loadedIniOverrideSession = await loadMachineSessionFromOpfs(
|
||||||
interp,
|
interp,
|
||||||
@@ -9726,10 +9732,10 @@
|
|||||||
verifyOpfsLoadResult(
|
verifyOpfsLoadResult(
|
||||||
"opfs_load_explicit_tool_table",
|
"opfs_load_explicit_tool_table",
|
||||||
loadedIniOverrideSession.toolTable,
|
loadedIniOverrideSession.toolTable,
|
||||||
opfsToolTableResultLines("load", "9", "9", [
|
opfsToolTableResultLines("load", explicitToolTableLoadValues[0], explicitToolTableLoadValues[1], [
|
||||||
"tool_1.z=5.5",
|
`tool_1.z=${explicitToolTableLoadValues[2]}`,
|
||||||
"tool_1.diameter=0.625",
|
`tool_1.diameter=${explicitToolTableLoadValues[3]}`,
|
||||||
"tool_1.comment=browser explicit tool",
|
`tool_1.comment=${explicitToolTableLoadValues[4]}`,
|
||||||
]),
|
]),
|
||||||
);
|
);
|
||||||
const explicitParameterValues = [51.25, 102.5, 7.5, 202];
|
const explicitParameterValues = [51.25, 102.5, 7.5, 202];
|
||||||
@@ -9778,12 +9784,12 @@
|
|||||||
verifyOpfsSaveResult(
|
verifyOpfsSaveResult(
|
||||||
"opfs_save_explicit_tool_table",
|
"opfs_save_explicit_tool_table",
|
||||||
savedExplicitToolTable,
|
savedExplicitToolTable,
|
||||||
opfsToolTableResultLines("save", "9", "9"),
|
opfsToolTableResultLines("save", explicitToolTableValues[0], explicitToolTableValues[1]),
|
||||||
);
|
);
|
||||||
await verifyOpfsReadback(
|
await verifyOpfsReadback(
|
||||||
"opfs_saved_explicit_tool_table_text",
|
"opfs_saved_explicit_tool_table_text",
|
||||||
loadedIniOverrideSession.toolTable.opfsPath,
|
loadedIniOverrideSession.toolTable.opfsPath,
|
||||||
opfsToolTableTextLines("9", "9", "+5.500000", "+0.625000", ";browser explicit tool"),
|
opfsToolTableTextLines(...explicitToolTableReadbackValues),
|
||||||
);
|
);
|
||||||
|
|
||||||
await verifyOpfsInvalidIniSessionRejects(
|
await verifyOpfsInvalidIniSessionRejects(
|
||||||
|
|||||||
Reference in New Issue
Block a user