From 83b3e5c16cce698785318f829cb519efc606f741 Mon Sep 17 00:00:00 2001 From: wangdequan Date: Sat, 13 Jun 2026 08:16:48 +0800 Subject: [PATCH] Guard posargs and sequencing remap paths --- text6.txt | 45 +++++++++++++++++++ wasm-port/tests/browser/interp_smoke.html | 12 +++-- .../tests/wasm/node/verify_interp_wasm.mjs | 12 +++-- 3 files changed, 61 insertions(+), 8 deletions(-) diff --git a/text6.txt b/text6.txt index 2d1cce3..2c7ab2a 100644 --- a/text6.txt +++ b/text6.txt @@ -753,3 +753,48 @@ wasm-port/tests/host/verify_host_smokes.sh 会额外生成 `simpockets.tbl`,如处理该项应明确区分 vendored file list 与运行时 生成文件。继续避免 blocked runtime promotion、browser full inventory 扩面和 JS CNC 语义实现。 + +十九、2026-06-13 继续执行记录:posargs/sequencing remap staging path guard + +本批继续按“小批量 remap file-list staged path guard”推进,完成现有 Node/browser +remap coverage 的 2 个目录: + +- `remap/posargs.0` +- `remap/sequencing` + +完成内容: + +- Node 侧将 `posargs.0` 与 `sequencing` 的 inline remap file list 提成 fixed + manifest; +- Node 侧复用 `assertRemapRegressionStaging(...)`,用 upstream vendored `.ini/.ngc` + 文件清单与 fixed manifest 精确对账; +- Node 侧检查 `writeRemapRegressionFiles(...)` 目标 staged path 与 fixed manifest + 一致; +- browser 侧复用同名 staged path guard; +- browser 侧检查 staged path 去掉 `/work/browser-remap//` 前缀后与 fixed + manifest 一致; +- 未处理 `nested-remaps-oword`,因为该目录含当前 smoke 未 staging 的 + `testsub.ngc`,应单独判断是否扩展 file list; +- 仅校验文件清单与 staging 路径,不改变 remap 执行语义; +- browser 仍不依赖目录枚举。 + +已运行验证: + +```bash +git diff --check +SKIP_INTERP_BUILD=1 wasm-port/tests/wasm/node/verify_interp_wasm.sh +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_sim_configs_inventory_wasm.sh +wasm-port/tests/host/verify_host_smokes.sh +``` + +结果:全部通过。 + +下一步建议: + +继续处理剩余 remap file-list guard。优先候选:`remap-io`,但需要明确把 vendored +file list 与运行时生成的 `simpockets.tbl` 分开校验;`nested-remaps-oword` 也可处理, +但需先决定是否把未 staging 的 `testsub.ngc` 纳入 fixed manifest。继续避免 blocked +runtime promotion、browser full inventory 扩面和 JS CNC 语义实现。 diff --git a/wasm-port/tests/browser/interp_smoke.html b/wasm-port/tests/browser/interp_smoke.html index 2619241..b536fef 100644 --- a/wasm-port/tests/browser/interp_smoke.html +++ b/wasm-port/tests/browser/interp_smoke.html @@ -6178,11 +6178,13 @@ ].join("\n"), ); - const posargs0Dir = await writeRemapRegressionFiles(interp, "posargs.0", [ + const posargs0Files = [ "test.ini", "test.ngc", "rg881.ngc", - ]); + ]; + const posargs0Dir = await writeRemapRegressionFiles(interp, "posargs.0", posargs0Files); + assertRemapRegressionStaging("posargs.0", posargs0Files, posargs0Dir); verifyExpectedOutput( "browser_posargs_0_remap", interp.runRemapFile( @@ -6210,7 +6212,7 @@ ].join("\n"), ); - const sequencingDir = await writeRemapRegressionFiles(interp, "sequencing", [ + const sequencingFiles = [ "test.ini", "test.ngc", "rg881.ngc", @@ -6220,7 +6222,9 @@ "rm408.ngc", "rm409.ngc", "rm410.ngc", - ]); + ]; + const sequencingDir = await writeRemapRegressionFiles(interp, "sequencing", sequencingFiles); + assertRemapRegressionStaging("sequencing", sequencingFiles, sequencingDir); verifyExpectedOutput( "browser_sequencing_remap", interp.runRemapFile( diff --git a/wasm-port/tests/wasm/node/verify_interp_wasm.mjs b/wasm-port/tests/wasm/node/verify_interp_wasm.mjs index f303a96..d9ac123 100644 --- a/wasm-port/tests/wasm/node/verify_interp_wasm.mjs +++ b/wasm-port/tests/wasm/node/verify_interp_wasm.mjs @@ -1150,11 +1150,13 @@ verifyExpectedOutput( ].join("\n"), ); -const posargs0Dir = writeRemapRegressionFiles("posargs.0", [ +const posargs0Files = [ "test.ini", "test.ngc", "rg881.ngc", -]); +]; +const posargs0Dir = writeRemapRegressionFiles("posargs.0", posargs0Files); +assertRemapRegressionStaging("posargs.0", posargs0Files, posargs0Dir); verifyExpectedOutput( "posargs_0_remap_wasm", interp.runRemapFile( @@ -1182,7 +1184,7 @@ verifyExpectedOutput( ].join("\n"), ); -const sequencingDir = writeRemapRegressionFiles("sequencing", [ +const sequencingFiles = [ "test.ini", "test.ngc", "rg881.ngc", @@ -1192,7 +1194,9 @@ const sequencingDir = writeRemapRegressionFiles("sequencing", [ "rm408.ngc", "rm409.ngc", "rm410.ngc", -]); +]; +const sequencingDir = writeRemapRegressionFiles("sequencing", sequencingFiles); +assertRemapRegressionStaging("sequencing", sequencingFiles, sequencingDir); verifyExpectedOutput( "sequencing_remap_wasm", interp.runRemapFile(