diff --git a/text5.txt b/text5.txt index 1b6d83a..7bb7f8f 100644 --- a/text5.txt +++ b/text5.txt @@ -7182,3 +7182,110 @@ Guard mixed m98m99 staging paths 其中 `09-disable-fanuc-subs` 用 `writeInterpRegressionFiles(...)` staging 同一目录 下两个 `.ngc` 和两个 `.ini`。本批仍只做 staged path 与 fixed manifest 对账, 不扩大到 blocked runtime。 + +七十六、2026-06-13 继续执行记录:m98m99 nested/disable-fanuc staging path guard + +本轮继续拆 `tests/interp/m98m99`,仍保持小批量 staging guard。当前 host 仍按 +blocked runtime 规则处理,不执行任何 `ENABLE_*_RUNTIME_PROBE=1` opt-in native +probe。 + +1. 候选选择。 + +选择上一节建议的第三小批: + +- `m98m99/07-nested-subs/test.ngc` +- `m98m99/08-sub-follows-main/test.ngc` +- `m98m99/09-disable-fanuc-subs/test-fanuc.ngc` +- `m98m99/09-disable-fanuc-subs/test-rs274ngc.ngc` + +其中 `09-disable-fanuc-subs` 同时 staging: + +```text +test-fanuc.ini +test-no-fanuc.ini +test-fanuc.ngc +test-rs274ngc.ngc +``` + +`.ini` 文件继续作为运行上下文 staging;本轮 `.ngc` manifest 对账只覆盖上述 +两个 `.ngc`。这些 case 已在 Node/browser 单独执行,不需要 HAL/task/tool +DB/Python remap/user-M process runtime。 + +2. 覆盖对账。 + +`tests/interp/m98m99` 当前 upstream `.ngc` manifest 已由既有 fixed list 覆盖, +本轮新增对账的 manifest slice 为: + +```text +07-nested-subs/test.ngc +08-sub-follows-main/test.ngc +09-disable-fanuc-subs/test-fanuc.ngc +09-disable-fanuc-subs/test-rs274ngc.ngc +``` + +3. 更新。 + +更新: + +- `wasm-port/tests/wasm/node/verify_interp_wasm.mjs` +- `wasm-port/tests/browser/interp_smoke.html` + +Node 新增: + +- 将 `09-disable-fanuc-subs` 的 staged file list 提成 + `m98m99DisableFanucSubsFiles`; +- 检查 `07`、`08` direct-file staged path,加上 `09` staged `.ngc` path, + 与 `m98m99RegressionFiles.slice(9, 13)` 推导出的 + `/work/interp/m98m99/...` path 一致。 + +Browser 新增: + +- 同步提取 `m98m99DisableFanucSubsFiles`; +- 检查 `07`、`08` 和 `09` staged `.ngc` path 去掉 + `/work/browser-interp/m98m99/` 前缀后,与 + `m98m99RegressionFiles.slice(9, 13)` 一致; +- browser 仍不枚举目录。 + +4. 已执行验证。 + +```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 +``` + +结果: + +- `git diff --check` clean。 +- `vendor sync up to date` +- `standalone CNC semantics guard complete` +- `interp_wasm_node_smoke=ok` +- Node inventory 保持: + - `executed=28` + - `passed=28` + - `skipped=131` + - `unexpected_fail=0` +- `browser_interp_smoke=ok` +- `host_wasm_opfs_browser_smokes=ok` + +5. 下一步工作建议。 + +当前工作集已稳定。建议先做小提交,message: + +```text +Guard nested m98m99 staging paths +``` + +提交后继续拆 `m98m99`,下一小批建议选择: + +```text +10-M98-P001/test.ngc +11-main-program-oword/*.ngc +``` + +`11-main-program-oword` 有 7 个 `.ngc`,已在 Node/browser 分组执行;下一批仍只 +做 staged path 与 fixed manifest 对账,不扩大到 blocked runtime。 diff --git a/wasm-port/tests/browser/interp_smoke.html b/wasm-port/tests/browser/interp_smoke.html index 446ddb2..4659950 100644 --- a/wasm-port/tests/browser/interp_smoke.html +++ b/wasm-port/tests/browser/interp_smoke.html @@ -7838,16 +7838,27 @@ "X IN O1", ); + const m98m99DisableFanucSubsFiles = [ + "test-fanuc.ini", + "test-no-fanuc.ini", + "test-fanuc.ngc", + "test-rs274ngc.ngc", + ]; const m98m99DisableFanucSubsDir = await writeInterpRegressionFiles( interp, "m98m99/09-disable-fanuc-subs", - [ - "test-fanuc.ini", - "test-no-fanuc.ini", - "test-fanuc.ngc", - "test-rs274ngc.ngc", - ], + m98m99DisableFanucSubsFiles, ); + const m98m99NestedStagedNgcFiles = [ + m98m99NestedSubsPath, + m98m99SubFollowsMainPath, + ...m98m99DisableFanucSubsFiles + .filter((file) => file.endsWith(".ngc")) + .map((file) => `${m98m99DisableFanucSubsDir}/${file}`), + ].map((path) => path.replace("/work/browser-interp/m98m99/", "")); + if (m98m99NestedStagedNgcFiles.join(",") !== m98m99RegressionFiles.slice(9, 13).join(",")) { + throw new Error("browser_interp_m98m99_nested_staging_manifest: list drift"); + } for (const disableFanucCase of [ { name: "fanuc_ini", diff --git a/wasm-port/tests/wasm/node/verify_interp_wasm.mjs b/wasm-port/tests/wasm/node/verify_interp_wasm.mjs index 8e10ff8..13fb548 100644 --- a/wasm-port/tests/wasm/node/verify_interp_wasm.mjs +++ b/wasm-port/tests/wasm/node/verify_interp_wasm.mjs @@ -2739,14 +2739,28 @@ verifyExpectedOutput( "X IN O1", ); +const m98m99DisableFanucSubsFiles = [ + "test-fanuc.ini", + "test-no-fanuc.ini", + "test-fanuc.ngc", + "test-rs274ngc.ngc", +]; const m98m99DisableFanucSubsDir = writeInterpRegressionFiles( "m98m99/09-disable-fanuc-subs", + m98m99DisableFanucSubsFiles, +); +assert.deepEqual( [ - "test-fanuc.ini", - "test-no-fanuc.ini", - "test-fanuc.ngc", - "test-rs274ngc.ngc", + m98m99NestedSubsPath, + m98m99SubFollowsMainPath, + ...m98m99DisableFanucSubsFiles + .filter((file) => file.endsWith(".ngc")) + .map((file) => `${m98m99DisableFanucSubsDir}/${file}`), ], + m98m99RegressionFiles + .slice(9, 13) + .map((file) => `/work/interp/m98m99/${file}`), + "interp m98m99 nested/disable-fanuc staging manifest drift", ); for (const disableFanucCase of [ {