Guard mixed m98m99 staging paths
This commit is contained in:
105
text5.txt
105
text5.txt
@@ -7077,3 +7077,108 @@ Guard initial m98m99 staging paths
|
|||||||
其中 `06-error-mixed-sub-styles` 有 4 个 `.ngc`,仍已在 Node/browser 分别执行;
|
其中 `06-error-mixed-sub-styles` 有 4 个 `.ngc`,仍已在 Node/browser 分别执行;
|
||||||
本批只做 direct file staged path 与 fixed manifest 对账,不扩大到 blocked
|
本批只做 direct file staged path 与 fixed manifest 对账,不扩大到 blocked
|
||||||
runtime。
|
runtime。
|
||||||
|
|
||||||
|
七十五、2026-06-13 继续执行记录:m98m99 mixed direct-file staging path guard
|
||||||
|
|
||||||
|
本轮继续拆 `tests/interp/m98m99`,仍保持小批量 direct file staging guard。当前
|
||||||
|
host 仍按 blocked runtime 规则处理,不执行任何 `ENABLE_*_RUNTIME_PROBE=1`
|
||||||
|
opt-in native probe。
|
||||||
|
|
||||||
|
1. 候选选择。
|
||||||
|
|
||||||
|
选择上一节建议的第二小批:
|
||||||
|
|
||||||
|
- `m98m99/04-M98-but-no-sub/test.ngc`
|
||||||
|
- `m98m99/05-M98-loops/test.ngc`
|
||||||
|
- `m98m99/06-error-mixed-sub-styles/O...-called-with-O..._call.ngc`
|
||||||
|
- `m98m99/06-error-mixed-sub-styles/O...-ended-with-O..._endsub.ngc`
|
||||||
|
- `m98m99/06-error-mixed-sub-styles/O...-sub-called-with-M98.ngc`
|
||||||
|
- `m98m99/06-error-mixed-sub-styles/O...-sub-ended-with-M99.ngc`
|
||||||
|
|
||||||
|
这些 case 已在 Node/browser 单独执行,不需要 INI/HAL/task/tool DB/Python
|
||||||
|
remap/user-M process runtime。本轮只固定 direct file staged path 与既有
|
||||||
|
fixed `.ngc` manifest 第 4 到第 9 项的一致性,不新增 CNC 语义。
|
||||||
|
|
||||||
|
2. 覆盖对账。
|
||||||
|
|
||||||
|
`tests/interp/m98m99` 当前 upstream `.ngc` manifest 已由既有 fixed list 覆盖,
|
||||||
|
本轮新增对账的 manifest slice 为:
|
||||||
|
|
||||||
|
```text
|
||||||
|
04-M98-but-no-sub/test.ngc
|
||||||
|
05-M98-loops/test.ngc
|
||||||
|
06-error-mixed-sub-styles/O...-called-with-O..._call.ngc
|
||||||
|
06-error-mixed-sub-styles/O...-ended-with-O..._endsub.ngc
|
||||||
|
06-error-mixed-sub-styles/O...-sub-called-with-M98.ngc
|
||||||
|
06-error-mixed-sub-styles/O...-sub-ended-with-M99.ngc
|
||||||
|
```
|
||||||
|
|
||||||
|
3. 更新。
|
||||||
|
|
||||||
|
更新:
|
||||||
|
|
||||||
|
- `wasm-port/tests/wasm/node/verify_interp_wasm.mjs`
|
||||||
|
- `wasm-port/tests/browser/interp_smoke.html`
|
||||||
|
|
||||||
|
Node 新增:
|
||||||
|
|
||||||
|
- 收集 `06-error-mixed-sub-styles` 循环中 4 个
|
||||||
|
`writeInterpRegressionFile(...)` 返回的 staged path;
|
||||||
|
- 与 `04`、`05` 的 staged path 一起检查,确保实际 path 与
|
||||||
|
`m98m99RegressionFiles.slice(3, 9)` 推导出的 `/work/interp/m98m99/...`
|
||||||
|
path 一致。
|
||||||
|
|
||||||
|
Browser 新增:
|
||||||
|
|
||||||
|
- 收集 browser `06-error-mixed-sub-styles` 循环中 4 个 staged path;
|
||||||
|
- 与 `04`、`05` 的 staged path 一起去掉 `/work/browser-interp/m98m99/`
|
||||||
|
前缀;
|
||||||
|
- 检查结果与 `m98m99RegressionFiles.slice(3, 9)` 一致;
|
||||||
|
- 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 mixed m98m99 staging paths
|
||||||
|
```
|
||||||
|
|
||||||
|
提交后继续拆 `m98m99`,下一小批建议选择:
|
||||||
|
|
||||||
|
```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
|
||||||
|
```
|
||||||
|
|
||||||
|
其中 `09-disable-fanuc-subs` 用 `writeInterpRegressionFiles(...)` staging 同一目录
|
||||||
|
下两个 `.ngc` 和两个 `.ini`。本批仍只做 staged path 与 fixed manifest 对账,
|
||||||
|
不扩大到 blocked runtime。
|
||||||
|
|||||||
@@ -7697,6 +7697,7 @@
|
|||||||
].join("\n"),
|
].join("\n"),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
const m98m99MixedSubStylePaths = [];
|
||||||
for (const mixedSubStyleFixture of [
|
for (const mixedSubStyleFixture of [
|
||||||
{
|
{
|
||||||
name: "called_with_o_call",
|
name: "called_with_o_call",
|
||||||
@@ -7746,6 +7747,7 @@
|
|||||||
"m98m99/06-error-mixed-sub-styles",
|
"m98m99/06-error-mixed-sub-styles",
|
||||||
mixedSubStyleFixture.file,
|
mixedSubStyleFixture.file,
|
||||||
);
|
);
|
||||||
|
m98m99MixedSubStylePaths.push(mixedSubStylePath);
|
||||||
const mixedSubStyleRun = runWithCapturedPrints(() =>
|
const mixedSubStyleRun = runWithCapturedPrints(() =>
|
||||||
interp.runFile(mixedSubStylePath),
|
interp.runFile(mixedSubStylePath),
|
||||||
);
|
);
|
||||||
@@ -7772,6 +7774,14 @@
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
const m98m99MixedStagedNgcFiles = [
|
||||||
|
m98m99M98ButNoSubPath,
|
||||||
|
m98m99M98LoopsPath,
|
||||||
|
...m98m99MixedSubStylePaths,
|
||||||
|
].map((path) => path.replace("/work/browser-interp/m98m99/", ""));
|
||||||
|
if (m98m99MixedStagedNgcFiles.join(",") !== m98m99RegressionFiles.slice(3, 9).join(",")) {
|
||||||
|
throw new Error("browser_interp_m98m99_mixed_staging_manifest: list drift");
|
||||||
|
}
|
||||||
|
|
||||||
const m98m99NestedSubsPath = await writeInterpRegressionFile(
|
const m98m99NestedSubsPath = await writeInterpRegressionFile(
|
||||||
interp,
|
interp,
|
||||||
|
|||||||
@@ -2605,6 +2605,7 @@ verifyExpectedOutput(
|
|||||||
].join("\n"),
|
].join("\n"),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
const m98m99MixedSubStylePaths = [];
|
||||||
for (const mixedSubStyleFixture of [
|
for (const mixedSubStyleFixture of [
|
||||||
{
|
{
|
||||||
name: "called_with_o_call",
|
name: "called_with_o_call",
|
||||||
@@ -2653,6 +2654,7 @@ for (const mixedSubStyleFixture of [
|
|||||||
"m98m99/06-error-mixed-sub-styles",
|
"m98m99/06-error-mixed-sub-styles",
|
||||||
mixedSubStyleFixture.file,
|
mixedSubStyleFixture.file,
|
||||||
);
|
);
|
||||||
|
m98m99MixedSubStylePaths.push(mixedSubStylePath);
|
||||||
const mixedSubStyleRun = runWithCapturedPrints(() => interp.runFile(mixedSubStylePath));
|
const mixedSubStyleRun = runWithCapturedPrints(() => interp.runFile(mixedSubStylePath));
|
||||||
verifyExpectedOutput(
|
verifyExpectedOutput(
|
||||||
`interp_m98m99_06_${mixedSubStyleFixture.name}_wasm`,
|
`interp_m98m99_06_${mixedSubStyleFixture.name}_wasm`,
|
||||||
@@ -2677,6 +2679,17 @@ for (const mixedSubStyleFixture of [
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
assert.deepEqual(
|
||||||
|
[
|
||||||
|
m98m99M98ButNoSubPath,
|
||||||
|
m98m99M98LoopsPath,
|
||||||
|
...m98m99MixedSubStylePaths,
|
||||||
|
],
|
||||||
|
m98m99RegressionFiles
|
||||||
|
.slice(3, 9)
|
||||||
|
.map((file) => `/work/interp/m98m99/${file}`),
|
||||||
|
"interp m98m99 mixed direct-file staging manifest drift",
|
||||||
|
);
|
||||||
|
|
||||||
const m98m99NestedSubsPath = writeInterpRegressionFile("m98m99/07-nested-subs", "test.ngc");
|
const m98m99NestedSubsPath = writeInterpRegressionFile("m98m99/07-nested-subs", "test.ngc");
|
||||||
const m98m99NestedSubsRun = runWithCapturedPrints(() => interp.runFile(m98m99NestedSubsPath));
|
const m98m99NestedSubsRun = runWithCapturedPrints(() => interp.runFile(m98m99NestedSubsPath));
|
||||||
|
|||||||
Reference in New Issue
Block a user