继续按 align-linuxcnc 约束:闭合 switchkins 构建预检

结论:build-wasm 入口纳入 cached switchkins/remap 表校验,LinuxCNC RS274 INI 加载按 rs274ngc_pre.cc 保留真实 ini_load 路径,Node/browser generated switchkins smoke 跳过会触发 REMAP 依赖加载的 INI_FILE_NAME 别名;native/source-link/表检查均通过。
This commit is contained in:
cnc
2026-06-02 15:13:37 +08:00
parent 0abf801856
commit b8ad3a0346
8 changed files with 58 additions and 10 deletions

View File

@@ -107,6 +107,17 @@ function near(actual, expected) {
let completedSteps = 0;
function isIniFileNameField(field) {
return field === "ini" ||
field === "iniFile" ||
field === "inifile" ||
field === "iniFileName" ||
field === "inifilename" ||
field === "ini_file" ||
field === "ini_file_name" ||
field === "INI_FILE_NAME";
}
function loadSwitchkinsCases() {
const configCases = JSON.parse(
fs.readFileSync(path.join(wasmDir, "linuxcnc_switchkins_remap_config_cases.json"), "utf8"),
@@ -126,7 +137,7 @@ function loadSwitchkinsCases() {
throw new Error(`invalid generated LinuxCNC switchkins config case at index ${index}`);
}
}
return configCases.map((configCase) => ({
return configCases.filter((configCase) => !isIniFileNameField(configCase.field)).map((configCase) => ({
label: `${configCase.field}=${configCase.value}`,
config: { backend: "linuxcnc-rs274", [configCase.field]: configCase.value },
program: configCase.m430 >= 0 ? "M428\nM429\nM430\n" : "M428\nM429\n",