Commit Graph

212 Commits

Author SHA1 Message Date
cnc
aa6e79ac64 参考所有分组,完成尽量多的内容。禁止顺手扩功能 smoke
结论:收敛第 2/6 组 manifest/source-link 约束,公共 manifest source lister 只接受单个 manifest group 名称或 all,拒绝 core,header 这类复合 filter,避免 source coverage 查询静默误用;未扩展 smoke 功能。验证:CNC_SIM_ALL_NATIVE_GUARDRAILS_ONLY=1 ./test-all-native.sh、./test-native.sh、./test-linuxcnc-source-link.sh 均通过。
2026-06-03 19:11:22 +08:00
cnc
39f6f9133c 参考所有分组,完成尽量多的内容:收紧源列表过滤器 basename 守卫,结论测试通过 2026-06-03 18:54:36 +08:00
cnc
bc7b947d14 参考所有分组,完成尽量多的内容:收紧 CMake 源列表参数守卫,结论测试通过 2026-06-03 18:46:10 +08:00
cnc
1ce460d1d5 参考所有分组,完成尽量多的内容:收紧 CMake 源列表缺失守卫,结论测试通过 2026-06-03 18:36:59 +08:00
cnc
96b5973e1b 参考所有分组,完成尽量多的内容:收紧项目源列表路径守卫,结论测试通过 2026-06-03 18:27:29 +08:00
cnc
c8b834e36b 参考所有分组,完成尽量多的内容:补齐 switchkins 缓存签名输入
结论:switchkins/remap 表缓存签名现在包含 manifest 输入校验脚本,输入校验规则变化会使缓存失效;未扩展 smoke 功能。
2026-06-03 18:13:42 +08:00
cnc
32b4a96a9f 参考所有分组,完成尽量多的内容:收紧 switchkins 生成器 manifest 入口校验
结论:switchkins/remap 生成器现在先复用 LinuxCNC manifest 输入校验,坏行、未知组、重复源等会在生成 table/config/json 前被拦截;未扩展 smoke 功能。
2026-06-03 18:06:21 +08:00
cnc
ee0a3130bf 参考所有分组,完成尽量多的内容:收紧 switchkins 表 manifest 入口校验
结论:switchkins/remap 表 checker 现在先复用 LinuxCNC manifest 输入校验,坏行、未知组、重复源等会在表扫描前被拦截;未扩展 smoke 功能。
2026-06-03 17:49:42 +08:00
cnc
c031bc0a2c 参考所有分组,完成尽量多的内容:收紧 wasm blocker manifest 校验
结论:wasm blocker 分析器现在与 manifest 输入校验一致拒绝缺少 note 或字段数量异常的坏行,并在 blocker self-check 中覆盖该负向路径;未扩展 smoke 功能。
2026-06-03 17:43:51 +08:00
cnc
dcf246c0a0 参考所有分组,完成尽量多的内容:收紧 manifest 坏行校验
结论:通用 LinuxCNC manifest lister 现在与输入校验一致拒绝缺少 note 或字段数量异常的坏行,并在 all-native guardrail 中覆盖通用 lister 与 native/source-link 调用链;未扩展 smoke 功能。
2026-06-03 17:37:58 +08:00
cnc
1f4044efe2 参考所有分组:锁定 OPFS parseFileWithParameterFile 路径守卫,测试通过 2026-06-03 17:08:42 +08:00
cnc
3cc7590121 参考所有分组:锁定loadusr资产清单校验,测试通过 2026-06-03 17:00:15 +08:00
cnc
180c0f6dbe 收紧TRSRN资产清单校验 2026-06-03 16:44:33 +08:00
cnc
702f94cc52 参考 OPFS 参数桥接:锁定 LinuxCNC 临时参数目录守卫,测试通过 2026-06-03 16:42:05 +08:00
cnc
b366d220f5 参考所有分组:锁定浏览器入口和应用恢复守卫,测试通过 2026-06-03 16:28:11 +08:00
cnc
3090b9a79a 参考所有分组:锁定浏览器 switchkins 和应用 OPFS 守卫,测试通过 2026-06-03 16:19:04 +08:00
cnc
c851476007 参考所有分组:锁定 OPFS 参数失败清理守卫,测试通过 2026-06-03 16:09:22 +08:00
cnc
ddc20eeb98 参考所有分组:锁定 OPFS 目录和参数浏览器守卫,测试通过 2026-06-03 16:03:04 +08:00
cnc
1ef3f2c7df 参考所有分组:锁定 OPFS basic 浏览器守卫,测试通过 2026-06-03 15:56:39 +08:00
cnc
eef30e1831 参考所有分组:锁定 OPFS policy 负向守卫,测试通过 2026-06-03 15:49:36 +08:00
cnc
1433435121 参考所有分组:锁定 OPFS 和烟测覆盖守卫,测试通过 2026-06-03 15:43:23 +08:00
cnc
46807f05a5 继续按 align-linuxcnc 约束:补 OPFS 镜像跨实例浏览器验证,测试通过 2026-06-03 15:31:05 +08:00
cnc
77f9754833 参考所有分组,完成尽量多的内容。禁止顺手扩功能 smoke
结论:补强 tracked switchkins/remap 输出的 TOOL_TABLE source-only 守护,防止仓库内已生成表绕过 LinuxCNC source policy;表校验、native、source-link 均通过。
2026-06-03 15:20:57 +08:00
cnc
457557dee8 参考所有分组,完成尽量多的内容。禁止顺手扩功能 smoke
结论:按 LinuxCNC source policy 将 TOOL_TABLE 恢复为 source coverage only,撤回生成 API/browser switchkins cases,并增加 checker/native 守护;表校验、native、source-link 均通过。
2026-06-03 15:13:01 +08:00
cnc
aff6f85d8a 参考所有分组,完成尽量多的内容。禁止顺手扩功能 smoke
结论:按 LinuxCNC INI TOOL_TABLE 来源扩展 switchkins/remap 配置别名和生成案例,未增加 smoke 功能行为;表校验、native、source-link 均通过。
2026-06-03 14:53:37 +08:00
cnc
4086445900 参考所有分组,完成尽量多的内容。禁止顺手扩功能 smoke
结论:按 align-linuxcnc 约束补齐 switchkins TOOL_TABLE/tooldata 与 kinematics manifest lister 的源码政策说明,并用 all-native guardrail 锁定文档,避免规则和脚本脱节;不扩展 smoke 行为。

源依据:LinuxCNC M428/M429/M430 INI 的 [EMCIO] TOOL_TABLE 条目、linuxcnc-kinematics-source-files.txt 的 asset/tooldata/generated 分组,以及 check-linuxcnc-switchkins-remap-table-cached.sh 对引用源的签名约束。

验证:CNC_SIM_ALL_NATIVE_GUARDRAILS_ONLY=1 ./test-all-native.sh 通过;./test-native.sh 通过;./test-linuxcnc-source-link.sh 通过。
2026-06-03 13:47:51 +08:00
cnc
18f14ca111 参考所有分组,完成尽量多的内容。禁止顺手扩功能 smoke
结论:按 align-linuxcnc 约束增强 kinematics manifest lister 的 all-native 守卫,覆盖 asset/tooldata/generated 分组、full 输出以及未知 filter/output 负例;只收紧源清单约束,不扩展 smoke 行为。

源依据:linuxcnc-kinematics-source-files.txt 中由 ../linuxcnc/configs/sim、src/hal/user_comps、src/objects/hal/components 等 LinuxCNC 源/生成源组成的 kinematics、switchkins、TOOL_TABLE 覆盖。

验证:CNC_SIM_ALL_NATIVE_GUARDRAILS_ONLY=1 ./test-all-native.sh 通过;./test-native.sh 通过;./test-linuxcnc-source-link.sh 通过。
2026-06-03 13:42:26 +08:00
cnc
7d28d0a025 参考所有分组,完成尽量多的内容。禁止顺手扩功能 smoke
结论:按 align-linuxcnc 约束让 switchkins/remap 生成器读取 LinuxCNC INI [EMCIO] TOOL_TABLE,仅用于校验 linuxcnc-kinematics-source-files.txt 的 tooldata 源覆盖;不把 TOOL_TABLE 输出为新 API case,不扩展 smoke 行为。

源依据:../linuxcnc/configs/sim 下 M428/M429/M430 switchkins INI 的 [EMCIO] TOOL_TABLE 条目,以及现有 kinematics manifest 的 tooldata 条目。

验证:./check-linuxcnc-switchkins-remap-table.sh linuxcnc-kinematics-source-files.txt 通过;./test-native.sh 通过;./test-linuxcnc-source-link.sh 通过。
2026-06-03 13:36:25 +08:00
cnc
0d4e248811 参考所有分组,完成尽量多的内容。禁止顺手扩功能 smoke
结论:按 align-linuxcnc 约束收窄 OPFS removeFile 和 LinuxCNC 参数 .new/.bak 清理为文件专用语义,避免把同名目录递归删除。依据 ../linuxcnc/src/emc/rs274ngc/rs274ngc_pre.cc save_parameters() 的 fopen(filename.new)、unlink(filename.bak)、link、rename 行为。

验证:./test-native.sh 通过;./test-linuxcnc-source-link.sh 通过。
2026-06-03 13:28:15 +08:00
cnc
5481ab3bff 参考所有分组:锁定kinematics源约束守护
结论:按 align-linuxcnc 约束把 generated component manpage metadata 和已知不可解析 TOOL_TABLE 基线纳入 native/all-native guardrail,防止 kinematics manifest/source 校验被削弱。

验证:check-linuxcnc-inputs --require-kinematics-complete、check-linuxcnc-switchkins-remap-table、CNC_SIM_ALL_NATIVE_GUARDRAILS_ONLY=1 test-all-native、test-native、test-linuxcnc-source-link 均通过。
2026-06-03 11:36:09 +08:00
cnc
8ff22065dd 参考所有分组:补生成组件manpage源约束
结论:按 align-linuxcnc 约束补齐 kinematics manifest 的 halcompile generated manpage metadata,并让 M428/M429/M430 INI TOOL_TABLE 的不可解析 LinuxCNC 源现状成为显式基线。

验证:check-linuxcnc-inputs --require-kinematics-complete、check-linuxcnc-switchkins-remap-table、test-native、test-linuxcnc-source-link 均通过。
2026-06-03 11:29:47 +08:00
cnc
5c2d5cfa05 参考所有分组:保持OPFS备份失败非致命
结论:按 LinuxCNC rs274ngc_pre.cc save_parameters() 中 unlink/link 失败不阻止 rename 主参数文件的语义,OPFS 参数 .bak 写入失败时不让解析保存失败,并避免把目录当作可 unlink 的备份文件删除;未扩展 smoke 解析行为。

验证:./test-native.sh;./test-linuxcnc-source-link.sh;./test-web-wasm-browser-smoke.sh。
2026-06-03 11:22:08 +08:00
cnc
f98a715ed7 参考所有分组:替换陈旧OPFS参数备份
结论:按 LinuxCNC rs274ngc_pre.cc save_parameters() 先 unlink 旧 .bak 再 link 当前参数文件的语义,浏览器 OPFS 成功保存时总是用解析前主参数文件刷新 .bak;未扩展 smoke 解析行为。

验证:./test-native.sh;./test-linuxcnc-source-link.sh;./test-web-wasm-browser-smoke.sh。
2026-06-03 11:11:40 +08:00
cnc
1928ff3b6a 参考所有分组:补充OPFS失败解析备份断言
结论:按 LinuxCNC rs274ngc_pre.cc 仅成功解释后执行 save_parameters() 的语义,验证浏览器 OPFS 参数 .bak 不会在失败解析后被替换;未扩展 smoke 解析行为。

验证:./test-native.sh;./test-linuxcnc-source-link.sh;./test-web-wasm-browser-smoke.sh。
2026-06-03 11:04:35 +08:00
cnc
6cf7c73392 参考所有分组:完善OPFS参数备份桥接
结论:按 LinuxCNC rs274ngc_pre.cc save_parameters()/restore_parameters() 语义,补齐浏览器 OPFS 参数文件 .bak 持久化;未扩展 smoke 解析行为。

验证:./test-native.sh;./test-linuxcnc-source-link.sh;./test-web-wasm-node-smoke.sh;./test-web-wasm-browser-smoke.sh。
2026-06-03 10:58:05 +08:00
cnc
028825cd9c 参考所有分组:补 source 覆盖文档登记,测试通过 2026-06-03 10:21:39 +08:00
cnc
e778a37fdb 参考所有分组:补 native numeric O-word source 覆盖,测试通过 2026-06-03 10:17:10 +08:00
cnc
6cc07c2950 参考所有分组:补 native read path source 覆盖,测试通过 2026-06-03 10:10:45 +08:00
cnc
c5a1d655b0 参考所有分组:补 program end source 覆盖,测试通过 2026-06-03 10:04:46 +08:00
cnc
0895c04ab1 参考所有分组:补 G4 dwell source 边界覆盖,测试通过 2026-06-03 09:58:44 +08:00
cnc
c932e10801 参考所有分组:补 modal group source 覆盖,测试通过 2026-06-03 09:41:26 +08:00
cnc
d1e0152eb8 参考所有分组:补 G10 tool source 覆盖,测试通过 2026-06-03 09:36:47 +08:00
cnc
a134dcef7d 参考所有分组:补 G10 source 覆盖,测试通过 2026-06-03 09:32:16 +08:00
cnc
bbd5739e7a 参考所有分组:补 polar 和 NURBS source 覆盖,测试通过 2026-06-03 09:27:04 +08:00
cnc
611e6417b4 参考所有分组:补 NURBS source 覆盖,测试通过 2026-06-03 09:22:26 +08:00
cnc
fa4296d730 参考所有分组:补 percent 错误 source 覆盖,测试通过 2026-06-03 09:12:17 +08:00
cnc
2dd9847a7b 参考所有分组:补 comment 错误 source 覆盖,测试通过 2026-06-03 09:04:26 +08:00
cnc
9bf9206869 参考所有分组:补 percent 文件 source 覆盖,测试通过 2026-06-03 08:56:30 +08:00
cnc
090a5fb89c 参考所有分组:补 close_and_downcase word source 覆盖,测试通过 2026-06-03 08:49:10 +08:00
cnc
2f7a46758b 参考所有分组:补 extended N 行号 source 覆盖,测试通过 2026-06-03 08:41:44 +08:00