参考所有分组,完成尽量多的内容:收紧WASM blockers source-map边界守卫

This commit is contained in:
cnc
2026-06-05 07:20:05 +08:00
parent dc5cdeacc2
commit 89af73298e
2 changed files with 21 additions and 1 deletions

View File

@@ -6,7 +6,7 @@ cd "$(dirname "$0")"
# LinuxCNC source basis: this guard ties the documented WASM blocker map to
# LinuxCNC RS274/Python/remap/tooldata sources, the rs274 WASM manifest, and
# wasm-safe shim replacement sources. It validates source coverage only; it
# does not add CNC behavior or expand smoke parsing.
# does not add CNC behavior, expand smoke parsing, or interpret G-code.
linuxcnc_root=${LINUXCNC_ROOT:-../linuxcnc}
manifest=${1:-linuxcnc-rs274-wasm-source-files.txt}
@@ -147,7 +147,18 @@ for phrase in [
"must not become smoke parser behavior",
"blocked `dlopen` and blocked tooldata-users remain empty",
"Python/Boost.Python remap paths remain tracked blockers",
"./check-linuxcnc-wasm-blockers-source-map.sh",
"does not interpret G-code",
]:
if phrase not in source_map:
raise SystemExit(f"docs/linuxcnc-wasm-blockers-source-map.md missing boundary phrase: {phrase}")
for entry in [
"test-native.sh",
"test-linuxcnc-source-link.sh",
"build-wasm.sh",
]:
text = Path(entry).read_text(encoding="utf-8")
if "./check-linuxcnc-wasm-blockers-source-map.sh" not in text:
raise SystemExit(f"{entry} must run ./check-linuxcnc-wasm-blockers-source-map.sh")
PY

View File

@@ -67,6 +67,14 @@ Required tracked core examples:
- `src/emc/rs274ngc/interp_o_word.cc`
- `src/emc/rs274ngc/rs274ngc_pre.cc`
## Boundaries
- `test-native.sh`, `test-linuxcnc-source-link.sh`, and `build-wasm.sh` must
run `./check-linuxcnc-wasm-blockers-source-map.sh` before consuming blocker
analyzer output, source-linked LinuxCNC objects, or browser artifacts.
- The WASM blockers source-map guard validates LinuxCNC source/blocker
ownership and manifest drift only; it does not interpret G-code.
## Checks
Run:
@@ -76,6 +84,7 @@ Run:
./test-linuxcnc-wasm-blockers.sh linuxcnc-rs274-wasm-source-files.txt
./test-native.sh
./test-linuxcnc-source-link.sh
./build-wasm.sh
```
`check-linuxcnc-wasm-blockers-source-map.sh` keeps this document, the