Guard initial m98m99 staging paths
This commit is contained in:
95
text5.txt
95
text5.txt
@@ -6982,3 +6982,98 @@ Guard magic comments staging path
|
|||||||
提交后继续下一小批已有 interpreter fixture 的 staging manifest guard。下一步可以
|
提交后继续下一小批已有 interpreter fixture 的 staging manifest guard。下一步可以
|
||||||
开始拆 `m98m99`,但不要一次性扩全量;优先选择其中已经在 Node/browser 单独执行、
|
开始拆 `m98m99`,但不要一次性扩全量;优先选择其中已经在 Node/browser 单独执行、
|
||||||
且每个子目录只需 direct file staging 的小组,按 2 到 3 个子 case 一批推进。
|
且每个子目录只需 direct file staging 的小组,按 2 到 3 个子 case 一批推进。
|
||||||
|
|
||||||
|
七十四、2026-06-13 继续执行记录:m98m99 initial direct-file staging path guard
|
||||||
|
|
||||||
|
本轮继续当前 host 可执行路线。当前 host 仍按 blocked runtime 规则处理,不执行
|
||||||
|
任何 `ENABLE_*_RUNTIME_PROBE=1` opt-in native probe。
|
||||||
|
|
||||||
|
1. 候选选择。
|
||||||
|
|
||||||
|
开始拆 `tests/interp/m98m99`,但不一次性扩大 guard 范围。本轮只选择前三个
|
||||||
|
已经在 Node/browser 单独执行、且每个子目录只需 direct file staging 的 case:
|
||||||
|
|
||||||
|
- `m98m99/01-basics/test.ngc`
|
||||||
|
- `m98m99/02-variables/test.ngc`
|
||||||
|
- `m98m99/03-error-M98-no-P-word/test.ngc`
|
||||||
|
|
||||||
|
这些 case 不需要 INI/HAL/task/tool DB/Python remap/user-M process runtime。本轮
|
||||||
|
只固定 direct file staging path 与既有 fixed `.ngc` manifest 前三项的一致性,
|
||||||
|
不新增 CNC 语义。
|
||||||
|
|
||||||
|
2. 覆盖对账。
|
||||||
|
|
||||||
|
`tests/interp/m98m99` 当前 upstream `.ngc` manifest 已由既有 fixed list 覆盖,
|
||||||
|
本轮新增对账的前三项为:
|
||||||
|
|
||||||
|
```text
|
||||||
|
01-basics/test.ngc
|
||||||
|
02-variables/test.ngc
|
||||||
|
03-error-M98-no-P-word/test.ngc
|
||||||
|
```
|
||||||
|
|
||||||
|
3. 更新。
|
||||||
|
|
||||||
|
更新:
|
||||||
|
|
||||||
|
- `wasm-port/tests/wasm/node/verify_interp_wasm.mjs`
|
||||||
|
- `wasm-port/tests/browser/interp_smoke.html`
|
||||||
|
|
||||||
|
Node 新增:
|
||||||
|
|
||||||
|
- 在创建前三个 `writeInterpRegressionFile(...)` staged path 后,检查实际 path
|
||||||
|
与 `m98m99RegressionFiles.slice(0, 3)` 推导出的
|
||||||
|
`/work/interp/m98m99/...` path 一致。
|
||||||
|
|
||||||
|
Browser 新增:
|
||||||
|
|
||||||
|
- 在创建前三个 browser staged path 后,去掉
|
||||||
|
`/work/browser-interp/m98m99/` 前缀;
|
||||||
|
- 检查结果与 `m98m99RegressionFiles.slice(0, 3)` 一致;
|
||||||
|
- 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 initial m98m99 staging paths
|
||||||
|
```
|
||||||
|
|
||||||
|
提交后继续拆 `m98m99`,下一小批建议选择:
|
||||||
|
|
||||||
|
```text
|
||||||
|
04-M98-but-no-sub/test.ngc
|
||||||
|
05-M98-loops/test.ngc
|
||||||
|
06-error-mixed-sub-styles/*.ngc
|
||||||
|
```
|
||||||
|
|
||||||
|
其中 `06-error-mixed-sub-styles` 有 4 个 `.ngc`,仍已在 Node/browser 分别执行;
|
||||||
|
本批只做 direct file staged path 与 fixed manifest 对账,不扩大到 blocked
|
||||||
|
runtime。
|
||||||
|
|||||||
@@ -7621,6 +7621,14 @@
|
|||||||
"m98m99/03-error-M98-no-P-word",
|
"m98m99/03-error-M98-no-P-word",
|
||||||
"test.ngc",
|
"test.ngc",
|
||||||
);
|
);
|
||||||
|
const m98m99InitialStagedNgcFiles = [
|
||||||
|
m98m99BasicsPath,
|
||||||
|
m98m99VariablesPath,
|
||||||
|
m98m99M98NoPWordPath,
|
||||||
|
].map((path) => path.replace("/work/browser-interp/m98m99/", ""));
|
||||||
|
if (m98m99InitialStagedNgcFiles.join(",") !== m98m99RegressionFiles.slice(0, 3).join(",")) {
|
||||||
|
throw new Error("browser_interp_m98m99_initial_staging_manifest: list drift");
|
||||||
|
}
|
||||||
verifyExpectedOutput(
|
verifyExpectedOutput(
|
||||||
"browser_interp_m98m99_03_error_m98_no_p_word",
|
"browser_interp_m98m99_03_error_m98_no_p_word",
|
||||||
interp.runFile(m98m99M98NoPWordPath),
|
interp.runFile(m98m99M98NoPWordPath),
|
||||||
|
|||||||
@@ -2533,6 +2533,17 @@ const m98m99M98NoPWordPath = writeInterpRegressionFile(
|
|||||||
"m98m99/03-error-M98-no-P-word",
|
"m98m99/03-error-M98-no-P-word",
|
||||||
"test.ngc",
|
"test.ngc",
|
||||||
);
|
);
|
||||||
|
assert.deepEqual(
|
||||||
|
[
|
||||||
|
m98m99BasicsPath,
|
||||||
|
m98m99VariablesPath,
|
||||||
|
m98m99M98NoPWordPath,
|
||||||
|
],
|
||||||
|
m98m99RegressionFiles
|
||||||
|
.slice(0, 3)
|
||||||
|
.map((file) => `/work/interp/m98m99/${file}`),
|
||||||
|
"interp m98m99 initial direct-file staging manifest drift",
|
||||||
|
);
|
||||||
verifyExpectedOutput(
|
verifyExpectedOutput(
|
||||||
"interp_m98m99_03_error_m98_no_p_word_wasm",
|
"interp_m98m99_03_error_m98_no_p_word_wasm",
|
||||||
interp.runFile(m98m99M98NoPWordPath),
|
interp.runFile(m98m99M98NoPWordPath),
|
||||||
|
|||||||
Reference in New Issue
Block a user