From 8b89b5b4c60498b4f187a4845b0518d0fb22b0bd Mon Sep 17 00:00:00 2001 From: cnc Date: Wed, 3 Jun 2026 21:44:41 +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=E7=BB=93=E8=AE=BA=E4=B8=BA?= =?UTF-8?q?=20switchkins=20=E8=A1=A8=E6=A3=80=E6=9F=A5=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E5=AE=88=E4=BD=8F=20kinematics=20manifest=20=E5=AE=8C=E6=95=B4?= =?UTF-8?q?=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- check-linuxcnc-switchkins-remap-table.sh | 2 +- docs/linuxcnc-source-policy.md | 3 +++ test-all-native.sh | 2 +- test-native.sh | 2 +- 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/check-linuxcnc-switchkins-remap-table.sh b/check-linuxcnc-switchkins-remap-table.sh index aa2c61b..2c3c0bc 100755 --- a/check-linuxcnc-switchkins-remap-table.sh +++ b/check-linuxcnc-switchkins-remap-table.sh @@ -35,7 +35,7 @@ if [[ ! -f "$manifest" ]]; then echo "missing kinematics manifest: $manifest" >&2 exit 1 fi -LINUXCNC_ROOT="$linuxcnc_root" ./check-linuxcnc-inputs-cached.sh "$manifest" +LINUXCNC_ROOT="$linuxcnc_root" ./check-linuxcnc-inputs-cached.sh "$manifest" --require-kinematics-complete validate_manifest_switchkins_complete() { local manifest_file=$1 diff --git a/docs/linuxcnc-source-policy.md b/docs/linuxcnc-source-policy.md index a066145..786bc1d 100644 --- a/docs/linuxcnc-source-policy.md +++ b/docs/linuxcnc-source-policy.md @@ -114,6 +114,9 @@ Efficiency rules: 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 uncached switchkins/remap checker must first run kinematics-manifest + completeness validation so standalone table checks also cover the + source-manifest contract used by M428/M429/M430 and RTCP coverage. - The switchkins/remap generator must treat LinuxCNC `[EMCIO] TOOL_TABLE` entries as source coverage only. Resolvable tool tables referenced by M428/M429/M430 INI files must be present as `tooldata` manifest entries and diff --git a/test-all-native.sh b/test-all-native.sh index 07da893..da8a022 100755 --- a/test-all-native.sh +++ b/test-all-native.sh @@ -143,7 +143,7 @@ grep -F 'LinuxCNC source basis: the wasm build preflights and compiles the' buil grep -F 'LinuxCNC source basis: manifest validation checks LinuxCNC-root relative' check-linuxcnc-inputs.sh >/dev/null grep -F 'LinuxCNC source basis: the cached input checker keys check-linuxcnc-inputs.sh' check-linuxcnc-inputs-cached.sh >/dev/null grep -F 'LinuxCNC source basis: switchkins/remap table validation derives M428/M429/M430' check-linuxcnc-switchkins-remap-table.sh >/dev/null -grep -F 'LINUXCNC_ROOT="$linuxcnc_root" ./check-linuxcnc-inputs-cached.sh "$manifest"' check-linuxcnc-switchkins-remap-table.sh >/dev/null +grep -F 'LINUXCNC_ROOT="$linuxcnc_root" ./check-linuxcnc-inputs-cached.sh "$manifest" --require-kinematics-complete' check-linuxcnc-switchkins-remap-table.sh >/dev/null grep -F 'missing LinuxCNC switchkins REMAP INI in manifest:' check-linuxcnc-switchkins-remap-table.sh >/dev/null grep -F 'missing LinuxCNC switchkins remap source in manifest:' check-linuxcnc-switchkins-remap-table.sh >/dev/null grep -F 'LinuxCNC source basis: cached switchkins/remap validation hashes the LinuxCNC' check-linuxcnc-switchkins-remap-table-cached.sh >/dev/null diff --git a/test-native.sh b/test-native.sh index ac9956c..1a43677 100755 --- a/test-native.sh +++ b/test-native.sh @@ -55,7 +55,7 @@ grep -F 'LinuxCNC source basis: the wasm build preflights and compiles the' buil grep -F 'LinuxCNC source basis: manifest validation checks LinuxCNC-root relative' check-linuxcnc-inputs.sh >/dev/null grep -F 'LinuxCNC source basis: the cached input checker keys check-linuxcnc-inputs.sh' check-linuxcnc-inputs-cached.sh >/dev/null grep -F 'LinuxCNC source basis: switchkins/remap table validation derives M428/M429/M430' check-linuxcnc-switchkins-remap-table.sh >/dev/null -grep -F 'LINUXCNC_ROOT="$linuxcnc_root" ./check-linuxcnc-inputs-cached.sh "$manifest"' check-linuxcnc-switchkins-remap-table.sh >/dev/null +grep -F 'LINUXCNC_ROOT="$linuxcnc_root" ./check-linuxcnc-inputs-cached.sh "$manifest" --require-kinematics-complete' check-linuxcnc-switchkins-remap-table.sh >/dev/null grep -F 'missing LinuxCNC switchkins REMAP INI in manifest:' check-linuxcnc-switchkins-remap-table.sh >/dev/null grep -F 'missing LinuxCNC switchkins remap source in manifest:' check-linuxcnc-switchkins-remap-table.sh >/dev/null grep -F 'LinuxCNC source basis: cached switchkins/remap validation hashes the LinuxCNC' check-linuxcnc-switchkins-remap-table-cached.sh >/dev/null