接入虚拟HAL宏加载非主程序证据
This commit is contained in:
@@ -229,10 +229,34 @@ inventory `PASS` with matrix `INV`; the added value is explicit browser
|
||||
diagnostics evidence and release-gate enforcement that the virtual HAL reports
|
||||
are complete for non-Qt sim-config families.
|
||||
|
||||
The next practical promotion slice is to design non-main macro/load fixture
|
||||
evidence, starting with `axis/rose_engine/rcone.ngc` paired to
|
||||
`rcone_demo.ngc`, without executing macro/load rows as standalone browser main
|
||||
programs.
|
||||
## 2026-06-18 Macro/Load Non-Main Fixture Evidence
|
||||
|
||||
The virtual HAL diagnostics evidence now includes an explicit macro/load
|
||||
fixture report:
|
||||
|
||||
- `VIRTUAL_HAL_SIM_CONFIG_MACRO_LOAD_FIXTURES`
|
||||
- `createVirtualHalSimConfigMacroLoadFixtureReport()`
|
||||
|
||||
The first required non-main fixtures are:
|
||||
|
||||
- `axis/rose_engine/rcone.ngc`
|
||||
- `axis/external_offsets/queuebuster.ngc`
|
||||
|
||||
The rose-engine fixture is paired with `rcone_demo.ngc` and keeps `rcone.ngc`
|
||||
as a non-main macro/load asset. The external-offsets fixture records
|
||||
`queuebuster.ngc` as a declared `NGCGUI_SUBFILE` through `eoffsets.ini`; the
|
||||
fixture path is preserved for diagnostics, while the manifest-backed source
|
||||
evidence is the owning INI and paired LinuxCNC program source. This avoids
|
||||
pretending that `queuebuster.ngc` is a standalone browser main program.
|
||||
|
||||
Release diagnostics validation now requires
|
||||
`virtualHalSimConfigMacroLoadFixtures` to be present and ready. The report must
|
||||
keep `inventoryBaselineUnchanged === true`, every row must have
|
||||
`nonMainFixture === true`, and `standaloneMainViolations` must stay empty.
|
||||
|
||||
The next practical slice is to extend this report with one more non-main family
|
||||
such as `gscreen/silverdragon/macros/tool_sensor.ngc`, after proving the owning
|
||||
machine files and UI/process boundary do not cross into Python UI emulation.
|
||||
|
||||
## Boundary Statement
|
||||
|
||||
|
||||
@@ -475,7 +475,7 @@ Legend:
|
||||
| `axis/external_offsets/eoffsets.ngc` | `axis/external_offsets` | `main` | `FAIL` | `user-m-code-M111` | `SIM-EOFF` | `REP` | `REP` | `-` | Layer 2 expected-fail; M111 runtime edge covered |
|
||||
| `axis/external_offsets/jwp_z.ngc` | `axis/external_offsets` | `main` | `FAIL` | `user-m-code-M111` | `SIM-EOFF` | `REP` | `REP` | `-` | Layer 2 expected-fail; M111 runtime edge covered |
|
||||
| `axis/external_offsets/opa_demo.ngc` | `axis/external_offsets` | `main` | `FAIL` | `user-m-code-M111` | `SIM-EOFF` | `REP` | `REP` | `-` | Layer 2 expected-fail; M111 runtime edge covered |
|
||||
| `axis/external_offsets/queuebuster.ngc` | `axis/external_offsets` | `macro_load` | `PASS` | `-` | `SIM-EOFF` | `-` | `-` | `-` | inventory-only macro/load path; macro_load class coverage is represented by `axis/external_offsets/circles.ngc` |
|
||||
| `axis/external_offsets/queuebuster.ngc` | `axis/external_offsets` | `macro_load` | `PASS` | `-` | `SIM-EOFF` | `-` | `-` | `-` | non-main macro/load fixture diagnostics evidence is now required by virtual HAL release validation through the owning `eoffsets.ini` NGCGUI declaration; not promoted as a standalone browser main program |
|
||||
| `axis/foam/foam.ngc` | `axis/foam` | `main` | `FAIL` | `ini-axis-mask-UV` | `SIM-FOAM` | `REP` | `REP` | `-` | Layer 2 expected-fail; Layer 3/4 runtime edge covered |
|
||||
| `axis/geometry/xyzc.ngc` | `axis/geometry` | `main` | `FAIL` | `user-m-code-M110` | `SIM-XYZC` | `REP` | `REP` | `-` | Layer 2 expected-fail; M110 runtime edge covered |
|
||||
| `axis/gladevcp/probe.ngc` | `axis/gladevcp` | `main` | `PASS` | `-` | `-` | `REP` | `REP` | `-` | plain INI/tool-table main-program class representative covered in Node and browser through vendored staging inputs |
|
||||
@@ -512,7 +512,7 @@ Legend:
|
||||
| `axis/remap/rack-toolchange/nc_subroutines/tool_getput_move.ngc` | `axis/remap` | `remap_subroutine` | `PASS` | `-` | `-` | `N/A` | `N/A` | `ASSET-ONLY` | subroutine asset; validate by parse/remap path rather than standalone main-program execution |
|
||||
| `axis/remap/rack-toolchange/nc_subroutines/tool_holder_clear_move.ngc` | `axis/remap` | `remap_subroutine` | `PASS` | `-` | `-` | `N/A` | `N/A` | `ASSET-ONLY` | subroutine asset; validate by parse/remap path rather than standalone main-program execution |
|
||||
| `axis/remap/stop-lookahead/nc_files/examples.ngc` | `axis/remap` | `main` | `PASS` | `-` | `-` | `-` | `-` | `L4-PYTHON-REMAP` | native baseline pass, but Layer 4 full inventory is blocked by Python `queuebuster` remap runtime boundaries; remap subroutine assets remain `ASSET-ONLY` |
|
||||
| `axis/rose_engine/rcone.ngc` | `axis/rose_engine` | `macro_load` | `PASS` | `-` | `-` | `-` | `-` | `-` | inventory-only macro/load path; macro_load class coverage is represented by `axis/external_offsets/circles.ngc` unless this family is deliberately promoted later |
|
||||
| `axis/rose_engine/rcone.ngc` | `axis/rose_engine` | `macro_load` | `PASS` | `-` | `-` | `-` | `-` | `-` | non-main macro/load fixture diagnostics evidence is now required by virtual HAL release validation and paired with `rcone_demo.ngc`; not promoted as a standalone browser main program |
|
||||
| `axis/rose_engine/rcone_demo.ngc` | `axis/rose_engine` | `main` | `PASS` | `-` | `-` | `INV` | `-` | `-` | Node inventory coverage uses the native harness-selected `axis/sim.tbl` fallback staged at the INI-declared tool-table path; virtual HAL promotion candidate gate now exports explicit browser diagnostics evidence while inventory baseline remains unchanged |
|
||||
| `axis/vismach/5axis/bridgemill/5axisgui.ngc` | `axis/vismach` | `main` | `FAIL` | `ini-axis-mask-W` | `SIM-BRIDGE,5AX-EXEC` | `REP` | `REP` | `-` | Layer 2 expected-fail; W-axis and remap runtime edge covered |
|
||||
| `axis/vismach/5axis/bridgemill/remap_subs/428remap.ngc` | `axis/vismach` | `remap_subroutine` | `PASS` | `-` | `5AX-EXEC` | `N/A` | `N/A` | `ASSET-ONLY` | subroutine asset; validate by parse/remap path rather than standalone main-program execution |
|
||||
|
||||
Reference in New Issue
Block a user