From c8b834e36b954996320c62dca7f4e7af898e31af Mon Sep 17 00:00:00 2001 From: cnc Date: Wed, 3 Jun 2026 18:13:42 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=82=E8=80=83=E6=89=80=E6=9C=89=E5=88=86?= =?UTF-8?q?=E7=BB=84=EF=BC=8C=E5=AE=8C=E6=88=90=E5=B0=BD=E9=87=8F=E5=A4=9A?= =?UTF-8?q?=E7=9A=84=E5=86=85=E5=AE=B9=EF=BC=9A=E8=A1=A5=E9=BD=90=20switch?= =?UTF-8?q?kins=20=E7=BC=93=E5=AD=98=E7=AD=BE=E5=90=8D=E8=BE=93=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 结论:switchkins/remap 表缓存签名现在包含 manifest 输入校验脚本,输入校验规则变化会使缓存失效;未扩展 smoke 功能。 --- check-linuxcnc-switchkins-remap-table-cached.sh | 4 ++++ docs/linuxcnc-source-policy.md | 6 +++--- test-all-native.sh | 2 ++ 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/check-linuxcnc-switchkins-remap-table-cached.sh b/check-linuxcnc-switchkins-remap-table-cached.sh index 24fe500..1569a4a 100755 --- a/check-linuxcnc-switchkins-remap-table-cached.sh +++ b/check-linuxcnc-switchkins-remap-table-cached.sh @@ -92,6 +92,10 @@ if ! { sha256sum check-linuxcnc-switchkins-remap-table-cached.sh printf 'CHECK_SCRIPT=' sha256sum check-linuxcnc-switchkins-remap-table.sh + printf 'INPUT_CACHED_SCRIPT=' + sha256sum check-linuxcnc-inputs-cached.sh + printf 'INPUT_CHECK_SCRIPT=' + sha256sum check-linuxcnc-inputs.sh printf 'GENERATOR_SCRIPT=' sha256sum generate-linuxcnc-switchkins-remap-table.sh printf 'LINUXCNC_ROOT=%s\n' "$linuxcnc_root" diff --git a/docs/linuxcnc-source-policy.md b/docs/linuxcnc-source-policy.md index efa8ed9..a066145 100644 --- a/docs/linuxcnc-source-policy.md +++ b/docs/linuxcnc-source-policy.md @@ -109,9 +109,9 @@ Efficiency rules: `CNC_SIM_WASM_BLOCKERS_CACHE_DIR`. - Reuse switchkins/remap table check results in the same persistent cache with `check-linuxcnc-switchkins-remap-table-cached.sh`; its signature must include - the cached wrapper script, checker script, generator script, the kinematics - manifest, referenced LinuxCNC source size and nanosecond mtime stats, tracked - generated table/case outputs, and the thin API/web bridge files that pass + the cached wrapper script, checker script, generator script, manifest input + checker scripts, the kinematics manifest, referenced LinuxCNC source size and + nanosecond mtime stats, tracked generated table/case outputs, and the thin API/web bridge files that pass switchkins config aliases. Native, source-link, and build-wasm entry points must run this cached check before consuming those aliases. - The switchkins/remap generator must treat LinuxCNC `[EMCIO] TOOL_TABLE` diff --git a/test-all-native.sh b/test-all-native.sh index f7d166c..7e9e123 100755 --- a/test-all-native.sh +++ b/test-all-native.sh @@ -101,6 +101,8 @@ test -x check-linuxcnc-switchkins-remap-table-cached.sh grep -F 'check-linuxcnc-switchkins-remap-table.lock' check-linuxcnc-switchkins-remap-table-cached.sh >/dev/null grep -F 'sha256sum check-linuxcnc-switchkins-remap-table-cached.sh' check-linuxcnc-switchkins-remap-table-cached.sh >/dev/null grep -F 'sha256sum check-linuxcnc-switchkins-remap-table.sh' check-linuxcnc-switchkins-remap-table-cached.sh >/dev/null +grep -F 'sha256sum check-linuxcnc-inputs-cached.sh' check-linuxcnc-switchkins-remap-table-cached.sh >/dev/null +grep -F 'sha256sum check-linuxcnc-inputs.sh' check-linuxcnc-switchkins-remap-table-cached.sh >/dev/null grep -F 'sha256sum generate-linuxcnc-switchkins-remap-table.sh' check-linuxcnc-switchkins-remap-table-cached.sh >/dev/null grep -F 'stat -c '\''SOURCE=%n:%s:%y'\''' check-linuxcnc-switchkins-remap-table-cached.sh >/dev/null grep -F 'core/src/cnc_sim_api.cpp' check-linuxcnc-switchkins-remap-table-cached.sh >/dev/null