Files
cnc_wams/wasm-port/docs/scope-and-baseline.md
wangdequan 59cfc8406e 按建议,继续工作
结论:已新增 G53 机床坐标正向 fixture 和增量模式拒绝 fixture,固定 vendored LinuxCNC find_ends()/convert_straight() 行为;native probe 全量验证通过。
2026-06-07 21:42:36 +08:00

72 lines
2.1 KiB
Markdown

# Scope And Baseline
## Upstream Source Baseline
The standalone port currently treats `../linuxcnc/` as the read-only upstream
source provider.
- Upstream repository: `../linuxcnc`
- Upstream branch at baseline: `master`
- Upstream commit: `60597ee0718873d2449058c824262a275e5e4bad`
- Upstream subject: `Merge pull request #4043 from grandixximo/docs-inkscape-rsvg-shim`
- Upstream author: `andypugh`
- Upstream commit date: `2026-05-19T15:26:50+01:00`
The upstream working tree is allowed to contain unrelated local files, but the
vendored-source validation is tied to the commit above. If upstream HEAD
changes, re-run extraction intentionally and update this baseline in the same
change.
## Local Build Assumptions
- C++ compiler: `g++ (Debian 14.2.0-19) 14.2.0`
- C compiler: `gcc (Debian 14.2.0-19) 14.2.0`
- Python: `Python 3.13.5`
- Node.js: `v20.19.2`
- Emscripten: `emcc 3.1.69`
## Current Fixture Baseline
The native standalone validation currently uses the fixture set under
`tests/fixtures/`.
G-code fixture coverage includes:
- linear traverse and feed
- arc semantics
- modal incremental and absolute distance modes
- length unit switching
- plane selection
- position parameters
- canned cycles
- coordinate offsets
- G53 machine-coordinate motion
- feed and motion control modes
- cutter compensation motion
- probe semantics
- spindle-synchronized threading and rigid tap
- NURBS G5 and G6
- spindle orient
- tool semantics and tool table setup
- named and numbered parameters
- O-word subroutines
- program-end modal reset
- canonical runtime edge calls
Negative fixture coverage includes:
- zero-feed `G1`
- arc radius mismatch
- zero-radius arc
- cutter compensation plane-change rejection
- G53 incremental-mode rejection
- read-only named parameter writes
- read-only numbered parameter writes
- missing tool
- missing tool length offset
Machine baseline is still limited to standalone interpreter, trajectory
planner, LinuxCNC identity/trivial kinematics, LinuxCNC `5axiskins` XYZBCW
bridge-mill probing, and LinuxCNC TRT `xyzac`/`xyzbc` probing. Additional
non-trivial kinematics and fuller machine baselines remain future work.