Guard good arc staging paths
This commit is contained in:
45
text6.txt
45
text6.txt
@@ -370,3 +370,48 @@ wasm-port/tests/host/verify_host_smokes.sh
|
||||
`good` arc 6 项可按已有 fixed fixture list 补 staged path 对账;或者 `g72` 两项、
|
||||
`g71` 四项按 loop manifest 成组补 guard。继续避免 blocked runtime promotion、
|
||||
browser full inventory 扩面,以及任何 JS CNC 语义实现。
|
||||
|
||||
十、2026-06-13 继续执行记录:good arc staging path guard
|
||||
|
||||
本批按“自然成组 direct-file fixture staged path guard”推进,完成 `good` arc 目录
|
||||
6 个已有 Node/browser coverage 的 `.ngc` fixture:
|
||||
|
||||
- `good/good-arc.big.imperial.center-format.ngc`
|
||||
- `good/good-arc.big.metric.center-format.ngc`
|
||||
- `good/good-arc.medium.imperial.center-format.ngc`
|
||||
- `good/good-arc.medium.metric.center-format.ngc`
|
||||
- `good/good-arc.small.imperial.center-format.ngc`
|
||||
- `good/good-arc.small.metric.center-format.ngc`
|
||||
|
||||
完成内容:
|
||||
|
||||
- Node 侧复用既有 `goodArcFixtures` fixed manifest;
|
||||
- Node 侧继续用 `interpRegressionNgcFiles("good")` 与 upstream vendored fixture
|
||||
精确对账;
|
||||
- Node 侧收集实际 staged path,并检查与 fixed manifest 一致;
|
||||
- browser 侧复用既有 fixed-count 与 duplicate-free guard;
|
||||
- browser 侧收集实际 staged path,去掉 `/work/browser-interp/good/` 前缀后与
|
||||
fixed manifest 一致;
|
||||
- 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
|
||||
```
|
||||
|
||||
结果:全部通过。
|
||||
|
||||
下一步建议:
|
||||
|
||||
继续处理自然成组 direct-file fixtures。优先候选:`g72` 两项或 `g71` 四项按
|
||||
loop manifest 成组补 staged path guard;如果选择 `bad` expected-error 目录,
|
||||
需要按现有 `badInterpFixtures` fixed list 做 staged path 对账,不改变 expected-error
|
||||
语义。继续避免 blocked runtime promotion、browser full inventory 扩面和 JS CNC
|
||||
语义实现。
|
||||
|
||||
@@ -7089,8 +7089,10 @@
|
||||
if (goodArcFixtures.length !== 6 || new Set(goodArcFixtures.map((fixture) => fixture.file)).size !== goodArcFixtures.length) {
|
||||
throw new Error("browser_interp_good_fixture_coverage: list drift");
|
||||
}
|
||||
const goodArcStagedNgcFiles = [];
|
||||
for (const goodArcFixture of goodArcFixtures) {
|
||||
const goodArcPath = await writeInterpRegressionFile(interp, "good", goodArcFixture.file);
|
||||
goodArcStagedNgcFiles.push(goodArcPath);
|
||||
verifyExpectedOutput(
|
||||
`browser_interp_good_arc_${goodArcFixture.name}`,
|
||||
interp.runFile(goodArcPath),
|
||||
@@ -7106,6 +7108,10 @@
|
||||
].join("\n"),
|
||||
);
|
||||
}
|
||||
const goodArcStagedRelativeNgcFiles = goodArcStagedNgcFiles.map((path) => path.replace("/work/browser-interp/good/", ""));
|
||||
if (goodArcStagedRelativeNgcFiles.join(",") !== goodArcFixtures.map((fixture) => fixture.file).join(",")) {
|
||||
throw new Error("browser_interp_good_staging_manifest: list drift");
|
||||
}
|
||||
|
||||
const g6164Path = await writeInterpRegressionFile(interp, "g6164", "test.ngc");
|
||||
const g6164NgcFiles = [
|
||||
|
||||
@@ -2029,8 +2029,10 @@ assert.deepEqual(
|
||||
interpRegressionNgcFiles("good"),
|
||||
"interp good fixture coverage drift",
|
||||
);
|
||||
const goodArcStagedNgcFiles = [];
|
||||
for (const goodArcFixture of goodArcFixtures) {
|
||||
const goodArcPath = writeInterpRegressionFile("good", goodArcFixture.file);
|
||||
goodArcStagedNgcFiles.push(goodArcPath);
|
||||
verifyExpectedOutput(
|
||||
`interp_good_arc_${goodArcFixture.name}_wasm`,
|
||||
interp.runFile(goodArcPath),
|
||||
@@ -2046,6 +2048,11 @@ for (const goodArcFixture of goodArcFixtures) {
|
||||
].join("\n"),
|
||||
);
|
||||
}
|
||||
assert.deepEqual(
|
||||
goodArcStagedNgcFiles,
|
||||
goodArcFixtures.map((fixture) => `/work/interp/good/${fixture.file}`),
|
||||
"interp good staging manifest drift",
|
||||
);
|
||||
|
||||
const g6164Path = writeInterpRegressionFile("g6164", "test.ngc");
|
||||
const g6164NgcFiles = [
|
||||
|
||||
Reference in New Issue
Block a user