接入虚拟HAL宏加载非主程序证据
This commit is contained in:
75
text18.txt
75
text18.txt
@@ -625,3 +625,78 @@ browser diagnostics proof。
|
||||
main program 执行。
|
||||
3. 将 macro/load fixture evidence 接入 release diagnostics validation,但不改变当前
|
||||
inventory baseline。
|
||||
|
||||
### 四、2026-06-18 Macro Load Non-Main Fixture Evidence
|
||||
|
||||
本批接续 Non-Qt promotion evidence,完成 macro/load non-main fixture report 首批闭环。
|
||||
|
||||
新增实质能力:
|
||||
|
||||
- 新增 `VIRTUAL_HAL_SIM_CONFIG_MACRO_LOAD_FIXTURES`;
|
||||
- 新增 `createVirtualHalSimConfigMacroLoadFixtureReport()`:
|
||||
- 输出 `linuxcnc-wasm-virtual-hal-sim-config-macro-load-fixture-report`;
|
||||
- 显式输出 `inventoryBaselineUnchanged === true`;
|
||||
- 每个 row 必须 `nonMainFixture === true`;
|
||||
- 每个 row 的 `targetBrowserEvidence` 必须为
|
||||
`non-main-fixture-diagnostics`;
|
||||
- `standaloneMainViolations` 必须为空;
|
||||
- source manifest 只校验 LinuxCNC source evidence,不把 declared-only fixture path
|
||||
误当成 manifest 文件;
|
||||
- 首批 fixture:
|
||||
- `rose-engine-rcone-macro-load`:
|
||||
- `fixturePath` 为
|
||||
`linuxcnc/configs/sim/axis/rose_engine/rcone.ngc`;
|
||||
- source evidence 包含 `rose_engine.ini`、`rcone.ngc`、`rcone_demo.ngc`;
|
||||
- 与 `rcone_demo.ngc` 配对作为 rose engine non-main macro/load evidence;
|
||||
- `external-offsets-queuebuster-macro-load`:
|
||||
- `fixturePath` 为
|
||||
`linuxcnc/configs/sim/axis/external_offsets/queuebuster.ngc`;
|
||||
- source evidence 包含 `eoffsets.ini` 与 `eoffsets.ngc`;
|
||||
- `declaredOnly === true`,通过 `eoffsets.ini` 的 `NGCGUI_SUBFILE` 声明保留
|
||||
fixture path,不声明它是 standalone browser main program;
|
||||
- `createLinuxCncVirtualHalRuntime()` 新增:
|
||||
- `getSimConfigMacroLoadFixtureReport()`;
|
||||
- SDK index、SDK README、browser simulation re-export 同步导出新常量和新 report API;
|
||||
- real simulation diagnostics artifact 新增:
|
||||
- `virtualHalSimConfigMacroLoadFixtures`;
|
||||
- browser API `getVirtualHalSimConfigMacroLoadFixtureReport()`;
|
||||
- OPFS/session virtual HAL payload 新增:
|
||||
- `simConfigPromotionCandidates`;
|
||||
- `simConfigMacroLoadFixtures`;
|
||||
- saved-session diagnostics nested artifact 同步携带两类 evidence;
|
||||
- release diagnostics validation 新增 required evidence:
|
||||
- `hasMacroLoadFixtures`;
|
||||
- `macroLoadFixturesReady`;
|
||||
- validation row:`sim-config-macro-load-fixtures`;
|
||||
- 缺少 `virtualHalSimConfigMacroLoadFixtures` 时 release diagnostics validation 不再 ready;
|
||||
- coverage matrix 对 `axis/rose_engine/rcone.ngc` 与
|
||||
`axis/external_offsets/queuebuster.ngc` 注释更新为 non-main fixture diagnostics evidence;
|
||||
- promotion analysis 文档新增 Macro/Load Non-Main Fixture Evidence 小节。
|
||||
|
||||
语义边界:
|
||||
|
||||
- 本批没有降低 inventory skip count;
|
||||
- 当前 baseline 仍是 `executed=28`、`passed=28`、`skipped=131`、
|
||||
`unexpected_fail=0`;
|
||||
- 本批没有新增 G-code/interpreter/planner/kinematics/remap 语义;
|
||||
- macro/load fixture evidence 只证明 LinuxCNC-owned source/config declaration 与
|
||||
virtual HAL diagnostics readiness;
|
||||
- `queuebuster.ngc` 只作为 `eoffsets.ini` 的 `NGCGUI_SUBFILE` declared-only fixture path
|
||||
记录,不作为 manifest-backed standalone file,也不作为 browser main program 执行;
|
||||
- virtual HAL 已满足 Web 方式数控系统仿真系统,并在仿真范围内替代 LinuxCNC
|
||||
realtime HAL、`halcmd`、motion controller;
|
||||
- virtual HAL 仍不提供 Linux kernel hard-realtime ABI、外部硬件驱动 ABI 或 native
|
||||
HAL module ABI;
|
||||
- `L4-PYTHON-REMAP`、`L4-TOOL-DB`、`L4-USER-M-PROCESS`、`UPSTREAM-DEMO` 仍保持
|
||||
locked;
|
||||
- G-code/interpreter/planner/canonical motion 语义仍来自 LinuxCNC-backed WASM。
|
||||
|
||||
下一步工作建议:
|
||||
|
||||
1. 扩展 macro/load fixture report 到一个 UI-family non-main 案例,优先评估
|
||||
`gscreen/silverdragon/macros/tool_sensor.ngc`。
|
||||
2. 推进前必须确认 owning machine files、UI process declaration 和 source evidence,
|
||||
不能把 Python UI process emulation 纳入 virtual HAL 范围。
|
||||
3. 如 UI-family 边界不清晰,先增加 negative fixture gate:证明
|
||||
`L4-PYTHON-REMAP` / Python UI process 相关 macro/load 不会被 macro/load fixture
|
||||
report 误解锁。
|
||||
|
||||
Reference in New Issue
Block a user