按建议继续完成后续工作

结论:upstream rs274 side-by-side 基线已扩展到 NURBS G5/G6 调度边界;控制点细节仍由 standalone fixture 覆盖,完整 native 验证已通过。
This commit is contained in:
2026-06-07 23:00:05 +08:00
parent 55fcaf0267
commit f408d0b157
4 changed files with 36 additions and 11 deletions

View File

@@ -111,10 +111,11 @@ The current fixture expectations validate standalone behavior against both the
vendored LinuxCNC source path and an upstream `rs274` side-by-side baseline for
parser/conversion, offsets, feed-control, comment/logging, numbered-parameter,
spindle-orient, file-open reset, file-finish, tool-reload, and O-word
subroutine fixtures, plus threading/rigid tap and the comparable canonical
runtime edge calls. Fixtures that depend on standalone-only runtime adapters,
HAL/INI/tool table setup, upstream `rs274` output gaps such as `WAIT`, or
richer machine session state still need dedicated native LinuxCNC baselines.
subroutine fixtures, plus threading/rigid tap, NURBS dispatch boundaries, and
the comparable canonical runtime edge calls. Fixtures that depend on
standalone-only runtime adapters, HAL/INI/tool table setup, upstream `rs274`
output gaps such as `WAIT` or hidden NURBS control-point detail, or richer
machine session state still need dedicated native LinuxCNC baselines.
The kinematics probes currently cover LinuxCNC identity/trivial kinematics,
the switchable `5axiskins` XYZBCW bridge-mill model, and the TRT `xyzac`/`xyzbc`

View File

@@ -69,9 +69,10 @@ semantic rewrites:
path. The upstream `rs274` side-by-side baseline now covers simple motion,
offsets, feed-control, comment/logging, numbered-parameter, spindle-orient,
file-open reset, file-finish, tool-reload, and O-word subroutine fixtures;
it also covers threading/rigid tap and comparable canonical runtime edge
calls. Adapter-heavy fixtures and upstream `rs274` output gaps such as
`WAIT` still need dedicated native LinuxCNC baselines.
it also covers threading/rigid tap, NURBS dispatch boundaries, and comparable
canonical runtime edge calls. Adapter-heavy fixtures and upstream `rs274`
output gaps such as `WAIT` or hidden NURBS control-point detail still need
dedicated native LinuxCNC baselines.
## Current Drift Conclusion

View File

@@ -507,10 +507,11 @@ Current verified progress:
native LinuxCNC canonical output for simple motion, offsets, feed-control,
comment/logging, numbered-parameter, spindle-orient, file-finish, and
tool-reload fixtures. It now also includes file-open reset and O-word
subroutine fixture coverage, threading/rigid tap coverage, plus comparable
canonical runtime edge calls. Native output is filtered to the event classes
each standalone fixture explicitly expects, while upstream `rs274` output
gaps such as `WAIT` remain covered by the standalone harness rather than
subroutine fixture coverage, threading/rigid tap coverage, NURBS dispatch
boundary coverage, plus comparable canonical runtime edge calls. Native
output is filtered to the event classes each standalone fixture explicitly
expects, while upstream `rs274` output gaps such as `WAIT` and hidden NURBS
control-point detail remain covered by the standalone harness rather than
being treated as side-by-side evidence. The comparison does not introduce a
project-authored CNC semantics oracle.
- `tests/fixtures/gcode_errors/g1_zero_feed.ngc` and

View File

@@ -19,6 +19,8 @@ FIXTURES=(
plane_selection
modal_incremental
numbered_params
nurbs_g5_semantics
nurbs_g6_semantics
oword_subroutine
percent_file_finish
position_params
@@ -75,6 +77,16 @@ normalize_standalone_events() {
next
}
if (line ~ /^NURBS_G5_FEED /) {
print "NURBS_G5_FEED"
next
}
if (line ~ /^NURBS_G6_FEED /) {
print "NURBS_G6_FEED"
next
}
if (line == "MIST_ON" || line == "MIST_OFF" || line == "FLOOD_ON" || line == "FLOOD_OFF" ||
line == "ENABLE_FEED_OVERRIDE" || line == "DISABLE_FEED_OVERRIDE" ||
line == "DISABLE_ADAPTIVE_FEED" || line == "ENABLE_ADAPTIVE_FEED" ||
@@ -366,6 +378,11 @@ normalize_upstream_rs274_output() {
next
}
if (line ~ /^NURBS_G5_FEED\(/) {
print "NURBS_G5_FEED"
next
}
if (line ~ /^COMMENT\("/) {
value = args_of(line)
sub(/^"/, "", value)
@@ -585,6 +602,11 @@ normalize_upstream_rs274_output() {
next
}
}
/^N\.\.\.\.\. saicanon NURBS_G6_FEED_/ && seen_reset {
print "NURBS_G6_FEED"
next
}
'
}