Files
cnc_wams/完善wasm/working/03-推进台账.md
2026-07-10 21:26:42 -04:00

1077 lines
72 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 03-推进台账
本文件按轮记录推进过程。每轮必须写清楚:做了什么、改了哪些文件、验证了什么、下一步是什么。
## 记录模板
```text
## YYYY-MM-DD HH:MM 时区 轮次标题
### 本轮目标
### 已做事项
### 修改文件
### 验证情况
### 结论
### 下一步
```
## 2026-07-10 11:17 EDT ACC-038 04 HAL Component P1 源码同步与哈希 Gate
### 本轮目标
执行 `24` 的阶段 A`and2``or2``not``mux2``scale` 从仅有 P0 定位推进到可复现、固定哈希保护的 P1同时保持组件运行和动态加载边界不误晋级。
### 已做事项
- 将五个 `.comp` 同时加入 `tools/source-manifest.txt``tools/task-hal-source-manifest.txt`
- 运行既有 `extract_sources.sh`,从只读上游抽取五个文件到 `vendor/linuxcnc/src/hal/components`
- 新增 `tools/verify_hal_component_source_sync.sh`,校验锁定 commit、双清单、P0/P1 字节一致和五个固定 SHA-256。
- 专项 gate 通过,输出 `hal_component_source_count=5``hal_component_source_sync=ok`
- task-HAL 参考清单 gate 通过;五个组件已匹配,但清单中的其他 15 个 task/motion/HAL 参考文件仍未 vendored因此 `nativeHalSyncReady=false` 保持不变。
- 首次运行全量 `verify_vendor_sync.sh` 失败,原因是前序恢复的非上游 `xyzac-trt_cmds.hal` fallback 未登记;按既有 D-013 和不回退原则保留该文件,新增独立 overlay manifest 并扩展 gate 后重跑通过。
- 新增 ADR-011固定严格 upstream source manifest 与 generated vendor overlay 必须分离,未知额外文件仍一票否决。
- 新增 `26` 实施记录并同步总控索引、矩阵、验证命令、风险、交付索引、04 模块和 125 项绑定表。
### 修改文件
- `wasm-port/tools/source-manifest.txt`
- `wasm-port/tools/task-hal-source-manifest.txt`
- `wasm-port/tools/verify_hal_component_source_sync.sh`
- `wasm-port/tools/vendor-overlay-manifest.tsv`
- `wasm-port/tools/verify_vendor_sync.sh`
- `wasm-port/vendor/linuxcnc/src/hal/components/{and2,or2,not,mux2,scale}.comp`
- `wasm-port/docs/source-reuse-map.md`
- `完善wasm/working/26-04-HAL-Component-P1源码同步与哈希Gate实施记录.md`
- `完善wasm/working/README.md``01``03``04``05``08``09``10``11``12``13``14``24`
### 验证情况
- `./tools/verify_upstream_baseline.sh` 通过。
- `./tools/verify_hal_component_source_sync.sh` 通过,五项 `vendor_match=1`commit 为 `60597ee...e4bad`
- `./tools/verify_task_hal_source_manifest.sh` 返回成功,`task_hal_reference_source_ready=1``task_hal_vendor_hash_match_ready=1`;整个 task-HAL vendor 集合仍未完成。
- `./tools/verify_vendor_sync.sh` 首次失败并定位既有 fallback建立独立 path/hash/provenance overlay 清单后重跑通过,输出 `vendor generated overlay validation complete: 1``vendor sync validation complete`
- 并行验证时第一条 native probes 会话仍在运行,误触发第二次并发重跑,`rs274` 出现 Bus error临时结果为 `unexpected_fail=1`;确认所有残留进程结束后串行重跑。
- 串行 `./tests/native/verify_native_probes.sh` 最终退出 0sim-config `total=159``pass=151``expected_fail=8``unexpected_fail=0`nc_files `total=107``pass=101``expected_fail=6``unexpected_fail=0`
- HAL runtime、standalone semantics guard、SDK surface、project release readiness、目标 Web Node smoke 均通过。
### 结论
`ACC-038/INT-025` 完成五个基础组件的专项 P1 源码同步/hash gate。04 的 `4.7-4.11` 只允许更新为“P1 已完成、执行待实现”,`4.16` 仍为预编译 allowlist 条件通过/任意动态加载 Blocked。
### 下一步
`24` 继续实现 halcompile 派生、precompile manifest、真实 `loadrt/addf/servo-step` 和 truth-table/thread-net evidence。
## 2026-07-10 10:58 EDT ACC-037 04 Host Runtime Opt-In Promotion Evidence Gate 落地蓝图
### 本轮目标
继续完善 `完善wasm/working`,把上一轮推进指针中的宿主实时/硬件/外部进程 opt-in proof 收敛为可执行、不可误晋级的状态机和 evidence gate。
### 已做事项
- 复核 `22` 的 Web/WASM simulation promotion 边界,并读取 `wasm-port/docs/host-runtime-boundary-handoff.md`、full-process design、release readiness、host tests 和 runtime-boundary TSV。
- 确认当前 host 对 User-M、Tool DB、Python remap 三个 opt-in probe 均为 host ready/dispatch allowed`execution_enabled=0``promotion_allowed=0`
- 确认 User-M/Tool DB 当前是 `ready_disabled_by_default`Python stop-lookahead 为单 fixture `runtime_lifecycle_probe_passed` 和 native evidence accepted但 manual promotion lock 仍生效。
- 确认 `project-release-readiness.json` 可为 `ready=true`,同时 blocked runtime families 非空且 promoted family 为空release ready 不能解释为 host promotion。
- 复核 LinuxCNC User-M `EMC_SYSTEM_CMD`、Tool DB、RTAPI/HAL thread、motion 和 HAL driver 源码归属。
- 检查目标 Web 项目的 `full-execution-boundary.js``native-task-hal-audit.js` 和 tests确认 Web simulation ready 与 host process/realtime/hardware false 同时存在。
- 新增 `25-04-Host-Runtime-Opt-In-Promotion-Evidence-Gate落地蓝图.md`,定义逐级状态机、`host_runtime_opt_in_evidence` schema、opt-in 安全合同、人工解锁和 realtime/hardware 非继承规则。
- 新增 ADR-010固定 project release readiness 与 host runtime promotion 分离。
- 同步更新 README、功能范围、任务矩阵、源码映射、联合矩阵、验证命令、风险、交付索引、04 模块矩阵和相关 125 项绑定行。
### 修改文件
- `完善wasm/working/25-04-Host-Runtime-Opt-In-Promotion-Evidence-Gate落地蓝图.md`
- `完善wasm/working/README.md`
- `完善wasm/working/01-项目功能内容.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/05-验收证据.md`
- `完善wasm/working/06-决策记录.md`
- `完善wasm/working/08-源码资产映射与证据索引.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/10-联合验证命令清单.md`
- `完善wasm/working/11-缺口风险与边界锁定.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/13-04验收文档任务对标矩阵.md`
- `完善wasm/working/14-04-125项逐项源码证据绑定表.md`
### 验证情况
- 04 编号项和逐项绑定保持 `w04_numbered_items=125``binding_rows=125`
- `cd wasm-port && ./tests/docs/node/verify_host_runtime_boundary_docs.sh` 通过,输出 `host_runtime_boundary_docs_node_smoke=ok`
- `cd wasm-port && node tests/host/verify_project_release_readiness_artifact.mjs` 通过,输出 `project_release_readiness_artifact_node_smoke=ok`
- `verify_full_execution_boundary.mjs` 通过,输出 `full_execution_boundary_smoke=ok`
- `verify_native_task_hal_audit.mjs` 通过,输出 Web simulation ready 与 host false 的成对字段:`external_user_m_process_ready=1``tool_db_process_ready=1`,同时 `host_external_user_m_process_ready=0``host_tool_db_process_ready=0``host_realtime_kernel=0``hardware_drive=0``promotion_scope=web_simulation_only`
- Web Node smoke 通过,输出 `xyzbc_trt_web_app_smoke=ok`
- 本轮未设置任何 `ENABLE_*_RUNTIME_PROBE=1`,未隐式运行宿主外部进程 probe。
### 结论
`ACC-037/INT-024` 已完成落地蓝图。Host ready/dispatch allowed、默认禁用、native pass、evidence accepted、manual unlock 和 promotion 已被拆成独立状态release `ready=true` 不再能够被解释为 realtime、hardware 或 external process 已晋级。
### 下一步
`25` 实现 `host_runtime_opt_in_evidence`、状态机和 release/promotion separation gate实际 opt-in native probe 继续只允许人工显式触发。Meter/Scope 和 HAL component 仍分别按 `23``24` 推进。
## 2026-07-10 10:47 EDT ACC-036 04 HAL Component Precompile Manifest / Truth-Table Gate 落地蓝图
### 本轮目标
继续在 `完善wasm/working` 中推进双项目对标,处理 `ACC-033/INT-020` 已发现但尚未细化到实施顺序的 HAL component precompile manifest/truth-table 缺口。
### 已做事项
- 逐文件复核 LinuxCNC `and2.comp``or2.comp``not.comp``mux2.comp``scale.comp` 的 pin、`function _``option period no` 和公式,并记录锁定 commit 下的 SHA-256。
- 检查 `wasm-port/vendor/linuxcnc/src`,确认当前没有 `hal/components` 目录;检查两个 source manifest确认五个 `.comp` 尚未纳入 P1 同步。
- 检查 `build_task_hal_wasm.sh`,确认当前 task-HAL WASM 构建没有编译五个组件,也没有导出组件 factory/step symbol。
- 检查 `linuxcnc_hal_runtime.cpp`,确认当前 `loadrt` 只追加 event`addf` 只登记函数名,`lchal_step_threads()` 只追加 `call:` event没有调用组件函数或更新输出 pin。
- 新增 `24-04-HAL-Component-Precompile-Manifest-Truth-Table-Gate落地蓝图.md`,固定 P1 源码同步、LinuxCNC 派生生成物、生成报告、manifest、真实运行时调用链、truth-table/formula evidence、Web evidence 和未知组件 blocked 规则。
- 新增 ADR-009禁止手写五个公式冒充 LinuxCNC 源码复用。
- 同步更新 README、功能范围、任务矩阵、源码映射、联合任务、验证命令、风险、交付索引、04 模块矩阵和 125 项绑定表。
### 修改文件
- `完善wasm/working/24-04-HAL-Component-Precompile-Manifest-Truth-Table-Gate落地蓝图.md`
- `完善wasm/working/README.md`
- `完善wasm/working/01-项目功能内容.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/05-验收证据.md`
- `完善wasm/working/06-决策记录.md`
- `完善wasm/working/08-源码资产映射与证据索引.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/10-联合验证命令清单.md`
- `完善wasm/working/11-缺口风险与边界锁定.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/13-04验收文档任务对标矩阵.md`
- `完善wasm/working/14-04-125项逐项源码证据绑定表.md`
### 验证情况
- 04 文档编号项计数保持 `w04_numbered_items=125`;逐项绑定表保持 `binding_rows=125`
- LinuxCNC HEAD 为 `60597ee0718873d2449058c824262a275e5e4bad`,五个 `.comp` SHA-256 与 `24` 登记值一致。
- `cd wasm-port && ./tools/verify_upstream_baseline.sh` 通过,输出 `upstream baseline validation complete`
- `cd wasm-port && ./tests/wasm/node/verify_hal_runtime.sh` 通过,输出 `linuxcnc_task_hal_wasm_build=ok``hal_runtime_registry=ok``hal_net_signal_propagation=ok``hal_thread_scheduler=ok``loadusr_blocked_evidence=ok``hal_runtime_wasm_node_smoke=ok`
- `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node` 通过,输出 `xyzbc_trt_web_app_smoke=ok`
- `rg` 一致性检查确认 `ACC-036``INT-023``ADR-009``24` 已进入总控引用。
### 结论
`ACC-036/INT-023` 已完成落地蓝图。当前最先要修复的不是 truth table 本身,而是五个 `.comp` 尚未进入 vendor/source manifest在 P1 同步、LinuxCNC 派生生成、真实 `loadrt/addf/servo-step` 和结构化执行 evidence 完成前04 的 `4.7-4.11` 仍不得晋级。
### 下一步
`24` 先把五个 `.comp` 纳入 `wasm-port` 的可复现同步和哈希 gate再实现生成物、precompile manifest、WASM symbol、truth-table/formula 和 thread/net execution gateMeter/Scope 则继续按 `23` 补实际 JSON evidence。
## 2026-07-10 10:20 EDT ACC-035 04 HAL Meter/Scope JSON Evidence Gate 落地蓝图
### 本轮目标
按用户要求继续完成 `完善wasm/working` 中的任务,完全对标本地 LinuxCNC 源程序、`wasm-port``web-rtcp-5axis-xyzbc-trt-sim-plan``04基于Web的LinuxCNC兼容数控仿真平台.txt`,处理推进指针中的 `hal_meter_evidence` / `hal_scope_waveform_evidence` 实际 gate 缺口。
### 已做事项
- 复核 `20-04-HAL-Scope-Meter-JSON-Gate实现缺口复核.md`,确认已有结论是当前缺 `hal_meter_evidence``hal_scope_waveform_evidence`
- 检查 `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_hal_runtime.cpp``verify_hal_runtime.mjs`,确认现有 `snapshot_json()``lchal_get_snapshot_json`、pin/signal/param/thread 基础能力可作为 meter/scope evidence 的输入来源。
- 检查 `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/runtime/gmoccapy-hal-model.js``verify_gmoccapy_hal_model.mjs`,确认已有 gmoccapy HAL model、pin group、core/spindle/postgui net 证据,但它们不是 meter/scope runtime proof。
- 检查 `web-xyzbc-trt-evidence.json``compare-xyzbc-trt-evidence.json` 的顶层字段,确认当前仍没有 `hal_meter_evidence``hal_scope_waveform_evidence`
- 新增 `23-04-HAL-Meter-Scope-JSON-Evidence-Gate落地蓝图.md`,固定 LinuxCNC 源码对照、现有数据源、两个 JSON schema、建议生成路径、Node gate、Web evidence/compare 扩展和 04 晋级条件。
- 更新 `README``04``09``10``12``13``14`,把 `ACC-035/INT-022` 纳入总控索引、任务矩阵、联合验证命令、交付索引和逐项绑定表。
### 修改文件
- `完善wasm/working/23-04-HAL-Meter-Scope-JSON-Evidence-Gate落地蓝图.md`
- `完善wasm/working/README.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/10-联合验证命令清单.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/13-04验收文档任务对标矩阵.md`
- `完善wasm/working/14-04-125项逐项源码证据绑定表.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
### 验证情况
- 04 文档编号项计数保持 `w04_numbered_items=125`
- `14-04-125项逐项源码证据绑定表.md` 逐项绑定行数保持 `binding_rows=125`
- `cd wasm-port && ./tests/wasm/node/verify_hal_runtime.sh` 通过,输出 `linuxcnc_task_hal_wasm_build=ok``hal_runtime_registry=ok``hal_net_signal_propagation=ok``hal_thread_scheduler=ok``loadusr_blocked_evidence=ok``hal_runtime_wasm_node_smoke=ok`
- `node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_gmoccapy_hal_model.mjs` 通过,输出 `gmoccapy_hal_model_smoke=ok`
- `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node` 通过,输出 `xyzbc_trt_web_app_smoke=ok`
### 结论
`ACC-035/INT-022` 已完成 HAL Meter/Scope JSON Evidence Gate 的落地蓝图。当前项目仍不能把 04 的 HAL Scope/Meter 宣称为完整完成;后续必须按 `23` 生成 `hal_meter_evidence``hal_scope_waveform_evidence`,并补齐 Node gate、Web evidence 和 compare 字段后才能晋级。
### 下一步
继续按 `23` 实际实现 `verify_hal_meter_evidence.mjs``verify_hal_scope_waveform_evidence.mjs`、Web evidence 字段和 compare gate并继续补 HAL component precompile manifest/truth-table gate。
## 2026-07-10 09:51 EDT ACC-034 04 Full-Process Realtime Runtime Proof 实现缺口复核
### 本轮目标
按用户要求继续完成 `完善wasm/working` 中的任务,完全对标本地 LinuxCNC 源程序、`wasm-port``web-rtcp-5axis-xyzbc-trt-sim-plan``04基于Web的LinuxCNC兼容数控仿真平台.txt`,处理上一轮推进指针中的 “full-process/realtime runtime proof” 缺口。
### 已做事项
- 读取 `04基于Web的LinuxCNC兼容数控仿真平台.txt``14-04-125项逐项源码证据绑定表.md``21-04-HAL-Component-Precompile-Manifest实现缺口复核.md``xyzbc-trt` 既有 working/测试文件,确认 full-process/realtime 尚缺总控专项复核。
- 复核 LinuxCNC 源码归属Task 对应 `src/emc/task`Motion 对应 `src/emc/motion`TP/TC 对应 `src/emc/tp`HAL thread 对应 `src/hal`,五轴代表配置对应 `configs/sim/axis/vismach/5axis`
- 检查 `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp``linuxcnc_motion_runtime.c``linuxcnc_hal_runtime.cpp``runtime/sdk/src/linuxcnc-task-hal.js` 和相关 WASM gate确认已有 Web/WASM task-motion-HAL 仿真运行时 proof。
- 检查 `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/runtime/full-execution-boundary.js``linuxcnc-task-hal-runtime.js``verify_full_execution_boundary.mjs``verify_linuxcnc_task_hal_runtime.mjs``verify_native_task_hal_audit.mjs` 和 browser shell smoke确认其显式区分 Web simulation promotion 与 host realtime/hardware/process false。
- 新增 `22-04-Full-Process-Realtime-Runtime-Proof实现缺口复核.md`,定义 full-process/realtime 的源码对照、现有实现 proof、禁止降级规则、严格状态和后续 gate。
- 运行 `verify_native_task_hal_audit.mjs` 时先发现 phase0 native probe 因 `xyzac-trt_cmds.hal` 缺失回退到 `blocked_missing_source`
-`wasm-port` 既有 D-013 决策,不修改只读上游 `linuxcnc`,从目标 app dist 中恢复同名生成 HAL 文件到 `wasm-port/vendor/linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt_cmds.hal`,恢复 native probe overlay fallback。
- 重新运行 phase0 和 native readiness audit 后通过,并输出 `promotion_scope=web_simulation_only``hardware_drive=0``host_realtime_kernel=0`
- 更新 `README``04``09``10``11``12``13``14``01`,把 `ACC-034/INT-021` 纳入总控索引、任务矩阵、联合验证命令、边界锁定和逐项绑定表。
### 修改文件
- `完善wasm/working/22-04-Full-Process-Realtime-Runtime-Proof实现缺口复核.md`
- `完善wasm/working/README.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/10-联合验证命令清单.md`
- `完善wasm/working/11-缺口风险与边界锁定.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/13-04验收文档任务对标矩阵.md`
- `完善wasm/working/14-04-125项逐项源码证据绑定表.md`
- `完善wasm/working/01-项目功能内容.md`
- `完善wasm/working/06-决策记录.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
- `wasm-port/vendor/linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt_cmds.hal`
### 验证情况
- 04 文档编号项计数保持 `w04_numbered_items=125`
- `14-04-125项逐项源码证据绑定表.md` 逐项绑定行数保持 `binding_rows=125`
- `node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_full_execution_boundary.mjs` 通过,输出 `full_execution_boundary_smoke=ok`
- `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node` 通过,输出 `xyzbc_trt_web_app_smoke=ok`
- `cd wasm-port && ./tests/wasm/node/verify_task_hal_wasm.sh` 通过,输出 `linuxcnc_task_hal_wasm_build=ok``linuxcnc_task_runtime_smoke=ok``pause_resume_step_motion_issue_from_execute=ok``task_hal_readiness_status_contract=ok` 等。
- `node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_linuxcnc_task_hal_runtime.mjs` 通过,输出 `linuxcnc_task_hal_runtime_smoke=ok``task_hal_machine_file_smoke=ok``switchkins_remap_hal_sync_smoke=ok``browser_task_hal_worker_smoke=ok`
- `node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_native_task_hal_audit.mjs` 首次失败,原因是 `trt_task_hal_source_proof_ready expected 1, got 0`;恢复 `wasm-port/vendor/.../xyzac-trt_cmds.hal` 后重跑通过。
- `cd wasm-port && ./tests/native/verify_task_hal_phase0.sh` 重跑通过,输出 `task_hal_phase0_native_probe_gate=ok`
- `node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_native_task_hal_audit.mjs` 重跑通过,输出 `native_task_hal_source_artifact_audit=ok``task_hal_web_simulation_boundary_consistent=1``hardware_drive=0``host_realtime_kernel=0``host_external_user_m_process_ready=0``host_tool_db_process_ready=0``promotion_scope=web_simulation_only`
- `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:browser` 通过,输出 `xyzbc_trt_browser_smoke=ok`
- `git diff --check -- 完善wasm/working wasm-port/vendor/linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt_cmds.hal web-rtcp-5axis-xyzbc-trt-sim-plan/build/readiness/native-task-hal-readiness.json gptlog-process/gpdlog.md` 无输出。
### 结论
`ACC-034/INT-021` 已完成实现缺口复核。当前两个目标项目已经具备 Web/WASM task-motion-HAL 仿真运行时 proof 的关键实现和 gate但该结论只支撑 `linuxcnc_task_motion_hal_wasm_simulation_runtime` 边界,不能把宿主实时内核、硬件驱动、完整 native process topology、任意宿主 User-M/Tool DB 外部进程写成无条件完成。
### 下一步
继续按 `14``22` 的缺口补实际 `hal_meter_evidence`/`hal_scope_waveform_evidence` gate、HAL component precompile manifest/truth-table gate 和宿主实时/硬件/外部进程 opt-in proof。
## 2026-07-10 09:34 EDT ACC-033 04 HAL Component Precompile Manifest 实现缺口复核
### 本轮目标
按用户要求继续完成 `完善wasm/working` 中的任务,完全对标本地 LinuxCNC 源程序和 `04基于Web的LinuxCNC兼容数控仿真平台.txt`,处理上一轮推进指针中的 “HAL component precompile manifest/truth-table gate” 缺口。
### 已做事项
- 复核 `19-04动态加载与预编译Manifest复核.md`,确认其中已定位 `and2``or2``not``mux2``scale` 的 LinuxCNC `.comp` 源码和 manifest 字段要求,但仍需检查实现层是否已有可执行 gate。
- 检索 `wasm-port`,确认当前未发现 `hal_component_precompile_manifest``component_precompile_manifest``verify_hal_component_precompile_manifest.mjs``verify_hal_component_truth_tables.mjs`
- 复核 LinuxCNC `and2.comp``or2.comp``not.comp``mux2.comp``scale.comp`,确认各组件的 pin、`function _``option period no` 和公式/真值表。
- 检索目标 Web 项目 native evidence确认可见 `loadrt mux2 names=J0_mux...``loadrt scale names=rpm_rps``addf J*_mux servo-thread``addf rpm_rps servo-thread` 等原生 HAL 文件行。
- 明确 native HAL 文件行只能证明 LinuxCNC 原生配置使用组件,不能证明 WASM/Web 已预编译并执行组件函数。
- 新增 `21-04-HAL-Component-Precompile-Manifest实现缺口复核.md`,定义 HAL component manifest 最小字段、truth-table/formula gate、thread/net gate 和逐项状态。
- 更新 `14``4.7-4.11``4.16` 的严格状态,明确 `loadrt` 事件、`.comp` 源码和 native HAL 文本均不能替代组件执行 gate。
- 更新 `04``09``10``11``12``13`、README 和 `01`,把 `ACC-033/INT-020` 纳入总控矩阵、验证命令、边界锁定和交付索引。
### 修改文件
- `完善wasm/working/21-04-HAL-Component-Precompile-Manifest实现缺口复核.md`
- `完善wasm/working/14-04-125项逐项源码证据绑定表.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/README.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/13-04验收文档任务对标矩阵.md`
- `完善wasm/working/10-联合验证命令清单.md`
- `完善wasm/working/11-缺口风险与边界锁定.md`
- `完善wasm/working/01-项目功能内容.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
### 验证情况
- 04 文档编号项计数保持 `w04_numbered_items=125`
- `14-04-125项逐项源码证据绑定表.md` 逐项绑定行数保持 `binding_rows=125`
- `cd wasm-port && ./tools/verify_upstream_baseline.sh` 通过,输出 `upstream baseline validation complete`
- `cd wasm-port && ./tests/wasm/node/verify_hal_runtime.sh` 通过,输出 `linuxcnc_task_hal_wasm_build=ok``hal_runtime_registry=ok``hal_net_signal_propagation=ok``hal_thread_scheduler=ok``loadusr_blocked_evidence=ok``hal_runtime_wasm_node_smoke=ok`
- `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node` 通过,输出 `xyzbc_trt_web_app_smoke=ok`
- `git diff --check -- 完善wasm/working gptlog-process/gpdlog.md` 无输出。
### 结论
`ACC-033/INT-020` 已完成实现缺口复核。LinuxCNC `.comp` 源码和目标 Web native evidence 中的 `loadrt mux2`/`loadrt scale` 行可以作为来源证据;但当前两个目标项目尚未形成 HAL component precompile manifest、WASM symbol、truth-table/formula gate 和 thread/net execution proof。后续不得把 `loadrt` 事件记录、HAL 文件文本或 native evidence 中的 `loadrt mux2/scale` 行直接宣称为 04 `4.7-4.11` 已完成。
### 下一步
继续按 `14``21` 的缺口补运行证据:优先补实际 `hal_meter_evidence`/`hal_scope_waveform_evidence` gate、HAL component precompile manifest/truth-table gate 和 full-process/realtime runtime proof。
## 2026-07-10 09:21 EDT ACC-032 04 HAL Scope/Meter JSON Gate 实现缺口复核
### 本轮目标
按用户要求继续完成 `完善wasm/working` 中的任务,完全对标本地 LinuxCNC 源程序和 `04基于Web的LinuxCNC兼容数控仿真平台.txt`,处理上一轮推进指针中的 “HAL Scope/Meter JSON gate” 缺口。
### 已做事项
- 复核 `17-04-HAL-Scope-Meter结构化证据复核.md`,确认其中已定义 `hal_meter_evidence``hal_scope_waveform_evidence`,但仍需检查实现层是否已有可执行 gate。
- 检索 `wasm-port/tests`,确认当前存在 `verify_hal_runtime.sh``verify_task_hal_wasm.sh``verify_motion_hal_sync.sh` 等 HAL runtime gate但未发现 `verify_hal_meter_evidence.mjs``verify_hal_scope_waveform_evidence.mjs`
- 检查 `web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_gmoccapy_hal_model.mjs``app/src/runtime/gmoccapy-hal-model.js`,确认 gmoccapy HAL 文件、pin group、core/spindle/postgui net 和硬按钮映射已有 Node smoke。
- 检查 `web-rtcp-5axis-xyzbc-trt-sim-plan/working/evidence/web-xyzbc-trt-evidence.json``compare-xyzbc-trt-evidence.json`,确认已有 `halGraph``halNets``taskHalEquivalence``taskHalFullState``pyvcpPostgui``visualEvidence` 等字段,但未见 `hal_meter_evidence``hal_scope_waveform_evidence`
- 复核 LinuxCNC 本地 HAL 工具路径,确认 `meter.c``scope.c``scope_rt.c``scope_shm.h``scope_usr.h``halmeter.1.adoc``halscope.adoc` 仍是 HAL Meter/Scope 的对照证据。
- 新增 `20-04-HAL-Scope-Meter-JSON-Gate实现缺口复核.md`,明确当前已有 HAL model/graph 不能替代 meter/scope JSON gate。
- 更新 `14``4.13``4.14``10.6``10.7` 的严格状态,区分 HAL 监视模型条件通过与 HAL Scope/Meter JSON gate 待实现。
- 更新 `04``09``10``11``12``13`、README 和 `01`,把 `ACC-032/INT-019` 纳入总控矩阵、验证命令、边界锁定和交付索引。
### 修改文件
- `完善wasm/working/20-04-HAL-Scope-Meter-JSON-Gate实现缺口复核.md`
- `完善wasm/working/14-04-125项逐项源码证据绑定表.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/README.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/13-04验收文档任务对标矩阵.md`
- `完善wasm/working/10-联合验证命令清单.md`
- `完善wasm/working/11-缺口风险与边界锁定.md`
- `完善wasm/working/01-项目功能内容.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
### 验证情况
- 04 文档编号项计数保持 `w04_numbered_items=125`
- `14-04-125项逐项源码证据绑定表.md` 逐项绑定行数保持 `binding_rows=125`
- `cd wasm-port && ./tools/verify_upstream_baseline.sh` 通过,输出 `upstream baseline validation complete`
- `node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_gmoccapy_hal_model.mjs` 通过,输出 `gmoccapy_hal_model_smoke=ok`
- `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node` 通过,输出 `xyzbc_trt_web_app_smoke=ok`
- `git diff --check -- 完善wasm/working gptlog-process/gpdlog.md` 无输出。
### 结论
`ACC-032/INT-019` 已完成实现缺口复核。当前两个目标项目已有 HAL runtime、HAL graph、gmoccapy HAL model 和代表 Web evidence但未形成 `hal_meter_evidence` / `hal_scope_waveform_evidence` 的可执行 JSON gate。后续不得把 `halGraph``halNets`、gmoccapy HAL model、按钮图标或截图直接宣称为 HAL Scope/Meter 完整对标。
### 下一步
继续按 `14``20` 的缺口补运行证据:优先补 `hal_meter_evidence`/`hal_scope_waveform_evidence` 实际 gate、HAL component precompile manifest/truth-table gate 和 full-process/realtime runtime proof。
## 2026-07-10 09:02 EDT ACC-031 04 动态加载与预编译 Manifest 复核
### 本轮目标
按用户要求继续完成 `完善wasm/working` 中的任务,完全对标本地 LinuxCNC 源程序和 `04基于Web的LinuxCNC兼容数控仿真平台.txt`,处理上一轮推进指针中的“动态加载/预编译 manifest”缺口。
### 已做事项
- 复核 04 中 `4.7-4.11``4.16``6.5``6.6`,确认这些项分别涉及 HAL `.comp` 组件、`loadrt` 运行时加载、自定义运动学和并联运动学。
- 检索本地 LinuxCNC `src/hal/components`,确认 `and2``or2``not``mux2``scale` 的真实源码是 `.comp`,不是 04 文档中写法暗示的 `.c` 源文件。
- 检查 `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_hal_runtime.cpp`,确认当前 `loadrt` 只记录 `loadrt:<name>` 事件,`loadusr` 明确阻塞,不执行运行时动态链接。
- 检查 `wasm-port/tests/wasm/node/verify_hal_runtime.mjs`,确认现有 HAL gate 覆盖 pin/signal/param/net/thread 和 loadusr blocked evidence但不执行 and2/or2/not/mux2/scale 组件逻辑。
- 检查 `wasm-port/tools/source-manifest.txt``verify_kinematics_wasm.mjs`,确认 kinematics 已覆盖 `trivkins``5axiskins``xyzac-trt``xyzbc-trt``puma``genser``genhex``pentakins` 等预编译模块。
- 新增 `19-04动态加载与预编译Manifest复核.md`,定义 HAL component precompile manifest 的字段、gate 和逐项结论。
- 更新 `14` 中 4.7-4.11、4.16、6.5、6.6 的严格状态,明确 HAL 组件仍待补专项 gatekinematics 只对已预编译模块条件通过。
- 更新 `04``09``10``11``12``13`、README 和 `01`,把 `ACC-031/INT-018` 纳入总控矩阵、验证命令、边界锁定和交付索引。
### 修改文件
- `完善wasm/working/19-04动态加载与预编译Manifest复核.md`
- `完善wasm/working/14-04-125项逐项源码证据绑定表.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/README.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/13-04验收文档任务对标矩阵.md`
- `完善wasm/working/10-联合验证命令清单.md`
- `完善wasm/working/11-缺口风险与边界锁定.md`
- `完善wasm/working/01-项目功能内容.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
### 验证情况
- 04 文档编号项计数保持 `w04_numbered_items=125`
- `14-04-125项逐项源码证据绑定表.md` 逐项绑定行数保持 `binding_rows=125`
- `cd wasm-port && ./tools/verify_upstream_baseline.sh` 通过,输出 `upstream baseline validation complete`
- `cd wasm-port && ./tests/wasm/node/verify_hal_runtime.sh` 通过,输出 `linuxcnc_task_hal_wasm_build=ok``hal_runtime_registry=ok``hal_net_signal_propagation=ok``hal_thread_scheduler=ok``loadusr_blocked_evidence=ok``hal_runtime_wasm_node_smoke=ok`
- `cd wasm-port && ./tests/wasm/node/verify_kinematics_wasm.sh` 通过,输出 `kinematics_wasm_node_smoke=ok`
- `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node` 通过,输出 `xyzbc_trt_web_app_smoke=ok`
- `git diff --check -- 完善wasm/working gptlog-process/gpdlog.md` 待本轮最终格式检查执行。
### 结论
`ACC-031/INT-018` 已完成源码边界复核。`4.7-4.11` 只能声明 LinuxCNC `.comp` 源码已定位,当前仍缺 HAL component precompile manifest 和 truth-table gate`4.16 loadrt` 在 WASM 中不是运行时动态加载,只能保持 Blocked/预编译 allowlist 条件通过;`6.5/6.6` 中已列入 manifest 的预编译 kinematics 可按 `verify_kinematics_wasm.sh` 条件通过。
### 下一步
继续按 `14``19` 的缺口补运行证据:优先补 HAL Scope/Meter JSON gate、HAL component precompile manifest/truth-table gate 和 full-process/realtime runtime proof。
## 2026-07-10 08:53 EDT ACC-030 04 五轴范围差异与代表应用复核
### 本轮目标
按用户要求继续完成 `完善wasm/working` 中的任务,完全对标本地 LinuxCNC 源程序和 `04基于Web的LinuxCNC兼容数控仿真平台.txt`,处理上一轮推进指针中的“五轴范围差异说明”缺口。
### 已做事项
- 读取 04 文档 `2.8 五轴联动专项`,确认 04 原文将 A/C 点动、A 轴 ±120° 限位、C 轴 WRAPPED_ROTARY、RTCP、五轴联动、斜面钻孔、球面加工、叶轮加工和旋转轴进给率全部写为通过。
- 检索 LinuxCNC 本地五轴配置,确认存在 `xyzbc-trt``xyzac-trt``xyzab-tdr`、TRSRN、max5、bridgemill 等多个五轴族,不能用单一 profile 证据继承全部五轴族。
- 复核 `xyzbc-trt.ini`:默认代表应用为 `COORDINATES = XYZBC``KINEMATICS = xyzbc-trt-kins`B/C 轴证据不能自动覆盖 04 写的 A/C。
- 复核 `xyzac-trt.ini`:存在 `XYZAC` 和 A/C 轴,但 `[AXIS_A]``MIN_LIMIT=-100``MAX_LIMIT=50`,不是 04 写的 `±120°`
- 复核 `xyzab-tdr.ini`:存在 `XYZAB` 和 A/B 轴,但与默认 `xyzbc-trt` 是不同机床族,且 A 轴限位为 `-3600..3600`
- 检索 `WRAPPED_ROTARY`,确认 LinuxCNC 支持该 INI 语义,但当前 `xyzbc-trt.ini`/`xyzac-trt.ini` 采用 C 轴 `-36000..36000` 大范围限位,未设置 `WRAPPED_ROTARY=1`
- 检索 `sphere.ngc``rtcp.ngc``impeller` 相关资产,确认本地未发现 04 写的 `nc_files/5axis/sphere.ngc`,但存在 `boat-xyzbc.ngc``boat-xyzac.ngc``impeller-7bl-xyzac.ngc`
- 读取 `web-rtcp-5axis-xyzbc-trt-sim-plan``xyzbc-trt` profile 和 Node tests确认默认 profile 是 XYZBC同时项目已有 `xyzac-trt``gmoccapy-xyzac-trt``gmoccapy-xyzab` 的 source boundary 和 program-case gate。
- 新增 `18-04五轴范围差异与代表应用复核.md`,按 profile、配置、G-code 和 gate 四者绑定五轴范围。
- 更新 `14` 中 8.1、8.2、8.3、8.6-8.10 的严格状态,明确哪些是 XYZBC 代表证据、哪些需修订或补专项 gate。
- 更新 `04``09``10``11``12``13`、README 和 `01`,把 `ACC-030/INT-017` 纳入总控矩阵、验证命令、边界锁定和交付索引。
### 修改文件
- `完善wasm/working/18-04五轴范围差异与代表应用复核.md`
- `完善wasm/working/14-04-125项逐项源码证据绑定表.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/README.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/13-04验收文档任务对标矩阵.md`
- `完善wasm/working/10-联合验证命令清单.md`
- `完善wasm/working/11-缺口风险与边界锁定.md`
- `完善wasm/working/01-项目功能内容.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
### 验证情况
- 04 文档编号项计数保持 `w04_numbered_items=125`
- `14-04-125项逐项源码证据绑定表.md` 逐项绑定行数保持 `binding_rows=125`
- `cd wasm-port && ./tools/verify_upstream_baseline.sh` 通过,输出 `upstream baseline validation complete`
- `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node` 通过,输出 `xyzbc_trt_web_app_smoke=ok`
- `node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_profile_boundary.mjs` 通过,输出 `profile_boundary_smoke=ok`
- `node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_real_linuxcnc_5axis_program_cases.mjs` 通过,输出 `linuxcnc_source_program_case_count=8``real_linuxcnc_5axis_program_cases_smoke=ok`
- `node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_impeller_feed_task_hal_run.mjs` 通过,输出 `impeller_motion_count=4492``impeller_feed_segments=4306``impeller_feed_task_hal_run=ok`
- `git diff --check -- 完善wasm/working gptlog-process/gpdlog.md` 无输出。
### 结论
`ACC-030/INT-017` 已完成。默认 `xyzbc-trt` 代表应用可继续作为 XYZBC TRT 的完整对标证据入口;`xyzac-trt``gmoccapy-xyzac-trt``gmoccapy-xyzab` 和 impeller program-case 证据可以登记为专项 source-boundary 或程序级证据;但 04 的 `10/10 五轴通过` 不能直接继承为所有 A/C、XYZAB、sphere、impeller、TRSRN、max5 等五轴族全部 UI 发布。
### 下一步
继续按 `14``18` 的缺口补运行证据:优先补 HAL Scope/Meter JSON gate、动态加载/预编译 manifest 和 full-process/realtime runtime proof。
## 2026-07-10 08:44 EDT ACC-029 04 HAL Scope/Meter 结构化证据复核
### 本轮目标
按用户要求继续推进 `完善wasm/working` 中的任务,完全对标本地 LinuxCNC 源程序和 `04基于Web的LinuxCNC兼容数控仿真平台.txt`,优先处理 04 中 HAL Scope/Meter 的源码边界和 Web 结构化 evidence 要求。
### 已做事项
- 复核 LinuxCNC `halscope` 归属:`src/hal/utils/scope.c``scope_rt.c``scope_shm.h``scope_usr.h``docs/src/hal/halscope.adoc` 和 man page确认其是用户态 GUI 加实时 HAL 组件、共享内存、采样周期、记录长度、触发和多通道样本组合。
- 复核 LinuxCNC `halmeter` 归属native `halmeter``docs/src/man/man1/halmeter.1.adoc`;确认其是观察单个 HAL pin/signal/parameter 当前值的工具。
- 检查 `wasm-port` 已有 virtual HAL pin registry、bridge snapshot、runtime read/write 和 OPFS virtual HAL snapshot 证据,确认可支撑 meter-like 当前值 evidence但不能直接支撑 `halscope` waveform。
- 检查 `web-rtcp-5axis-xyzbc-trt-sim-plan` 的 gmoccapy HAL model gate确认可支撑 HAL 模型和 UI 监视,但不能等价为原生 `halscope` 采样器。
- 新增 `17-04-HAL-Scope-Meter结构化证据复核.md`,定义 `hal_meter_evidence``hal_scope_waveform_evidence` 的最小 JSON 结构、字段和晋级规则。
- 更新 `14` 中 4.13、4.14、10.7 的严格状态,明确截图不能替代 HAL Scope waveform proof。
- 更新 `04``09``10``11``12``13` 和 README`ACC-029/INT-016` 纳入总控矩阵、交付索引、验证命令和边界锁定。
### 修改文件
- `完善wasm/working/17-04-HAL-Scope-Meter结构化证据复核.md`
- `完善wasm/working/14-04-125项逐项源码证据绑定表.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/README.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/13-04验收文档任务对标矩阵.md`
- `完善wasm/working/10-联合验证命令清单.md`
- `完善wasm/working/11-缺口风险与边界锁定.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
### 验证情况
- 04 文档编号项计数保持 `w04_numbered_items=125`
- `14-04-125项逐项源码证据绑定表.md` 逐项绑定行数保持 `binding_rows=125`
- `cd wasm-port && ./tools/verify_upstream_baseline.sh` 通过,输出 `upstream baseline validation complete`
- `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node` 通过,输出 `xyzbc_trt_web_app_smoke=ok`
- `git diff --check -- 完善wasm/working gptlog-process/gpdlog.md` 无输出。
### 结论
`ACC-029/INT-016` 已完成。04 中 `4.14 HAL Meter` 当前只能按 virtual HAL 当前值结构化 JSON 条件对标;`4.13``10.7 HAL Scope` 已定位原生 LinuxCNC 工具和源码边界,但 Web 晋级必须补 `hal_scope_waveform_evidence`,不能用截图或 canvas 画面直接宣称通过。
### 下一步
继续按 `14``15``16``17` 的缺口补运行证据优先补五轴范围差异说明、HAL Scope/Meter JSON gate、动态加载/预编译 manifest 和 full-process/realtime runtime proof。
## 2026-07-10 05:16 EDT ACC-024 双项目总控对标文件创建
### 本轮目标
按用户要求,将 `/home/mes123456/cnc_wams/wasm-port``/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan` 统一对标 `/home/mes123456/cnc_wams/linuxcnc``完善wasm/04基于Web的LinuxCNC兼容数控仿真平台.txt`,并在 `/home/mes123456/cnc_wams/完善wasm/working` 中创建相关文件。
### 已做事项
- 读取根目录 `AGENTS.md`,确认每轮结束必须追加中文日志到 `gptlog-process/gpdlog.md`
- 检查 `完善wasm/04基于Web的LinuxCNC兼容数控仿真平台.txt`,当时该文件为空,未作为细化验收依据;后续已在 ACC-025 中复核补齐后的内容并纳入任务矩阵。
- 读取 `03完全对标LinuxCNC的可执行验收标准.txt``完善wasm/working` 既有文档、`wasm-port/README.md``wasm-port/AGENTS.md``wasm-port/docs/source-reuse-map.md``web-rtcp-5axis-xyzbc-trt-sim-plan` README/working 文档。
- 确认 `linuxcnc` 当前 HEAD 为 `60597ee0718873d2449058c824262a275e5e4bad`,与验收标准和 `wasm-port` baseline 一致。
- 新增跨项目总控文件,覆盖双项目职责、源码资产映射、联合任务、验证命令、风险边界和交付索引。
- 执行 `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node`,验证 `xyzbc-trt` 代表 Web 应用 Node smoke 仍通过。
### 修改文件
- `完善wasm/working/07-双项目LinuxCNC源码对标总览.md`
- `完善wasm/working/08-源码资产映射与证据索引.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/10-联合验证命令清单.md`
- `完善wasm/working/11-缺口风险与边界锁定.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/README.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/05-验收证据.md`
- `完善wasm/working/06-决策记录.md`
### 验证情况
- 静态确认 `linuxcnc` commit 为 `60597ee0718873d2449058c824262a275e5e4bad`
- 静态盘点 `wasm-port``web-rtcp-5axis-xyzbc-trt-sim-plan` 的 README、working、source reference、runtime 入口和测试脚本。
- `xyzbc-trt` Node smoke 通过,关键输出:`xyzbc_trt_web_app_smoke=ok`
- 本轮新增的是总控文档,后续需按 `10-联合验证命令清单.md` 继续执行 browser/evidence 或 `wasm-port` gate 刷新更高层运行证据。
### 结论
已在 `完善wasm/working` 中建立双项目统一对标文档集。ACC-024 当时把空的 `04基于Web...txt` 记录为输入缺口ACC-025 已复核补齐后的 04 文档,并将其 10 个模块、125 个功能项和 3 个受限项纳入 `13-04验收文档任务对标矩阵.md`
### 下一步
如涉及核心语义或 SDK 改动,执行 `wasm-port` 基线、vendor、no-standalone 和 WASM/browser gate如涉及 `xyzbc-trt` UI、OPFS、按钮、路径、evidence 字段,执行对应 browser/evidence gate。
## 2026-07-10 05:56 EDT ACC-025 04 验收文档任务纳入对标矩阵
### 本轮目标
按用户要求,将 `完善wasm/working` 中的任务完全对标 LinuxCNC 源程序 `/home/mes123456/cnc_wams/linuxcnc``完善wasm/04基于Web的LinuxCNC兼容数控仿真平台.txt`
### 已做事项
- 重新检查 `完善wasm/04基于Web的LinuxCNC兼容数控仿真平台.txt`,确认该文件已补齐,大小为 15602 字节,不再是空文件。
- 读取 04 文档确认其包含系统体系结构、10 个模块、125 个功能项、3 个受限项和“通过/100%/超越”等总结性表述。
- 修正此前 working 文档中“04 为空/输入缺失”的过期记录。
- 新增 `13-04验收文档任务对标矩阵.md`,把 04 文档的功能项按 W04 任务包映射到 LinuxCNC 源码、`wasm-port` gate、`xyzbc-trt` Web gate 和严格状态。
- 更新 `09-联合任务矩阵.md`,将 `INT-010` 改为“04 参考说明纳入任务体系”,新增 `INT-013` 负责 04 的 125 项逐行 evidence 绑定。
- 更新 `10-联合验证命令清单.md`,增加 04 文档逐项 gate。
- 更新 `11-缺口风险与边界锁定.md`,把 04 的结论性表述作为待核验证据线索,而不是自动通过依据。
- 更新 `06-决策记录.md`,新增 ADR-007固定“04 的通过/100% 表述必须降解为待核验任务”的口径。
### 修改文件
- `完善wasm/working/13-04验收文档任务对标矩阵.md`
- `完善wasm/working/07-双项目LinuxCNC源码对标总览.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/10-联合验证命令清单.md`
- `完善wasm/working/11-缺口风险与边界锁定.md`
- `完善wasm/working/README.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/06-决策记录.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
### 验证情况
- 静态确认 `linuxcnc` commit 仍为 `60597ee0718873d2449058c824262a275e5e4bad`
- 确认 04 文档可检索到 10 个模块和 125 个功能项的验收摘要。
- 后续需执行 `INT-013`,将 125 个功能项逐行绑定到具体源码、测试、命令输出和 evidence。
### 结论
04 文档已从“输入缺口”升级为“任务输入”,并已纳入 working 总控矩阵。04 中的“通过/100%”不作为自动验收结论;必须按 `13-04验收文档任务对标矩阵.md` 继续补齐逐项证据。
### 下一步
执行 `INT-013`:逐行拆解 04 的 125 个功能项生成源码路径、上游测试、Native/WASM/Browser 命令和 evidence JSON 字段的绑定表。
## 2026-07-10 07:54 EDT ACC-026 04 文档 125 项逐项源码证据绑定
### 本轮目标
继续完善 `完善wasm/working`,直接落实 `INT-013`:把 04 文档中的 125 个功能项逐行绑定到 LinuxCNC 源码/资产、`wasm-port` 最小 gate、`web-rtcp-5axis-xyzbc-trt-sim-plan` Web evidence 和严格状态。
### 已做事项
- 使用 `awk``04基于Web的LinuxCNC兼容数控仿真平台.txt` 抽取全部编号功能项,确认共有 125 行。
- 新增 `14-04-125项逐项源码证据绑定表.md`,逐项列出 1.1 到 10.11 的功能、源码/资产归属、最小 gate/evidence 和严格状态。
-`14` 中集中列出当前缺口04 语法口径复核、full-process/realtime、HAL Scope/Meter、动态加载/预编译、多通道、五轴范围差异。
- 更新 `09-联合任务矩阵.md`,将 `INT-013` 从待复验改为已有证据,并指向 `14`
- 更新 `13-04验收文档任务对标矩阵.md`,将 `W04-EVID-001` 的逐项绑定表指向 `14`
- 更新 `README.md``12-交付文件索引.md`,加入 `14` 的索引和用途。
### 修改文件
- `完善wasm/working/14-04-125项逐项源码证据绑定表.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/13-04验收文档任务对标矩阵.md`
- `完善wasm/working/README.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
### 验证情况
- `awk` 抽取 04 编号功能项,确认 125 项来源清楚。
- 后续执行 `verify_upstream_baseline.sh``xyzbc-trt` Node smoke 和 `git diff --check` 作为最小验证。
### 结论
`INT-013` 的逐项绑定表已落地。04 文档 125 个功能项现在都有 working 层的源码/资产、gate/evidence 和严格状态归类;未完全闭合的项已集中列为后续运行证据缺口。
### 下一步
`14` 的缺口汇总补证据:优先复核 04 中疑似不完全匹配 LinuxCNC 口径的 G/M 代码项,补多通道 gate补 HAL Scope/Meter 结构化 evidence并补五轴范围差异说明。
## 2026-07-10 08:06 EDT ACC-027 04 语法口径源码复核
### 本轮目标
继续完善 `完善wasm/working`,优先处理 `14` 缺口汇总中的 04 语法口径复核项,确认 04 文档中 G/M 代码写法是否与本地 LinuxCNC 源码一致。
### 已做事项
- 检索 `linuxcnc/src/emc/rs274ngc``linuxcnc/docs/src/gcode` 和 5axis 代表配置,聚焦 `G68/G69``G51.1/G50.1``M19/M18``G43.1/G43.4/G49`
- 确认本地解释器枚举包含 `G_43_1/G_43_2/G_49/G_50/G_51`,未发现 `G_68/G_69/G_43_4/G_51_1/G_50_1`
- 确认坐标旋转实际由 G10/G5x R 参数、`rotation_xy``SET_XY_ROTATION` 路径承担。
- 确认 M19 orient spindle 有源码和文档证据M18 作为速度模式切换未找到本地源码证据。
- 确认 G43.1 为动态刀长补偿G49 为取消刀长补偿G43.4 未找到本地源码证据RTCP 不得按 G43.4 直接宣称通过。
- 新增 `15-04语法口径源码复核.md`,并更新 `14``09``04``README``12` 的状态和索引。
### 修改文件
- `完善wasm/working/15-04语法口径源码复核.md`
- `完善wasm/working/01-项目功能内容.md`
- `完善wasm/working/14-04-125项逐项源码证据绑定表.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/README.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
### 验证情况
- 已完成源码检索和行号级证据定位。
- 已执行 04 编号项和 `14` 绑定行数一致性检查,输出 `w04_numbered_items=125``binding_rows=125`
- 已执行 `wasm-port/tools/verify_upstream_baseline.sh`,输出 `upstream baseline validation complete`
- 已执行 `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node`,输出 `xyzbc_trt_web_app_smoke=ok`
- 已执行 `git diff --check -- 完善wasm/working gptlog-process/gpdlog.md`,无输出,退出码为 0。
### 结论
`ACC-027/INT-014` 已建立。04 中 1.40、1.41、7.3、8.4、8.5 已从“待复核”变为明确结论1.40、1.41 需修订7.3、8.4、8.5 为部分成立,不能按 04 原文直接宣称本地 LinuxCNC 全量支持。
### 下一步
继续按 `14` 的缺口汇总补证据:多通道 gate、HAL Scope/Meter 结构化 evidence、五轴范围差异说明并按 `15` 处理 04 中不符合本地 LinuxCNC 口径的 G/M 代码项。
## 2026-07-10 08:13 EDT ACC-028 04 多通道源码边界复核
### 本轮目标
继续完善 `完善wasm/working`,处理 `14` 缺口汇总中的多通道项,复核 04 文档 5.1-5.5 是否可按本地 LinuxCNC 源码直接宣称 5/5 通过。
### 已做事项
- 读取 04 文档 `2.5 多通道支持`,确认 04 将 5.1-5.5 写为双通道、三通道、同步握手、独立倍率、独立坐标系,并标为 5/5 通过。
- 检索 `linuxcnc/src/emc/task``src/emc/rs274ngc``src/emc/nml_intf``configs/sim` 和 Web/WASM 项目中与 channel、session、NML、Interp、倍率、参数文件和 HAL/User-M 同步相关的证据。
- 确认 `emctask.cc` 中主路径使用单个全局 `pinterp``emctaskmain.cc` 使用单 command/status/error NML 组合、单全局 `EMC_STAT` 和单 `interp_list`
- 确认 M62-M68/M66、M100-M199 可作为 HAL/User-M 同步原语,但不是多通道管理器。
- 确认 LinuxCNC 有多主轴示例 `configs/sim/axis/lathe_multispindle`,但多主轴不等价多 CNC 通道。
- 新增 `16-04多通道源码边界复核.md`,并更新 `14` 中 5.1-5.5 的严格状态。
- 更新 `09``04``README``12``13` 的索引和推进指针。
### 修改文件
- `完善wasm/working/16-04多通道源码边界复核.md`
- `完善wasm/working/14-04-125项逐项源码证据绑定表.md`
- `完善wasm/working/09-联合任务矩阵.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/README.md`
- `完善wasm/working/12-交付文件索引.md`
- `完善wasm/working/13-04验收文档任务对标矩阵.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
### 验证情况
- 已完成源码检索和行号级证据定位。
- 已执行 04 编号项和 `14` 绑定行数一致性检查,输出 `w04_numbered_items=125``binding_rows=125`
- 已执行 `wasm-port/tools/verify_upstream_baseline.sh`,输出 `upstream baseline validation complete`
- 已执行 `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node`,输出 `xyzbc_trt_web_app_smoke=ok`
- 后续执行 `git diff --check` 作为本轮最终格式检查。
### 结论
`ACC-028/INT-015` 已建立。04 的 5.1-5.5 不能按单个 `emctaskmain.cc` 直接宣称 5/5 通过;当前应改为 multi-session 条件目标和待实现 gate。5.2 的“三通道”数量口径未被本地源码证实5.4 需要新增每 session 独立倍率 evidence。
### 下一步
继续按 `14` 的缺口汇总补证据HAL Scope/Meter 结构化 evidence、五轴范围差异说明并按 `15``16` 修订 04 中不符合本地 LinuxCNC 口径的结论。
## 2026-07-10 03:13 EDT ACC-023 继续复验与 User-M 审计修复
### 本轮目标
按用户要求继续完成 `/home/mes123456/cnc_wams/完善wasm` 文档要求,复跑 LinuxCNC/WASM/Web 发布验收链路,修复新发现的验收漂移。
### 已做事项
- 读取 `03完全对标LinuxCNC的可执行验收标准.txt`、推进台账、任务矩阵、验收证据和 `wasm-port/AGENTS.md`
- 复跑基线、vendor 同步、自研语义 guard、Native、WASM Node、OPFS、UI Node、真实浏览器、host 聚合和 Python remap/tool DB 专项验证。
- 定位 `verify_sim_configs_inventory_wasm.sh` 首次失败:`axis/vismach/millturn/example.ngc``L4-USER-M-PROCESS` 剩余跳过 main 程序审计断言把当前 host 未 opt-in 的 `ready_disabled_by_default:native=0:node=0:browser=0` 误判为必须已有 Node/browser proof。
- 修正 `verify_sim_configs_inventory_wasm.mjs` 的 User-M 审计断言,使其按生成的 `native/node/browser` readiness 字段校验,并在 proof chain 完整时保持 `manual_promotion_lock_active`,未完整时保持 `runtime_proof_incomplete`
### 修改文件
- `wasm-port/tests/wasm/node/verify_sim_configs_inventory_wasm.mjs`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
- `gptlog-process/gpdlog.md`
- `web-rtcp-5axis-sim-plan/gptlog-process/gpdlog.md`
### 验证情况
- 首次失败命令:`./tests/wasm/node/verify_sim_configs_inventory_wasm.sh`,失败点为 `user-M Node proof status drift`
- 修复后单独复验通过:`sim_configs_wasm_node_inventory_executed=29``passed=29``skipped=130``unexpected_fail=0`
- 完整核心链路通过baseline、vendor sync、no-standalone guard、native probes、nc_files、sim configs、INI/interp/sim configs/nc_files/TP WASM、OPFS、UI Node 均通过。
- 浏览器和 host 链路通过INI panel browser、interp browser、host smokes、axis screenshot、OPFS session、real simulation page 均通过。
- 专项补充通过Python remap WASM row proof、SDK proof、tool DB node runtime adapter、Python remap browser row proof 均通过。
### 结论
本轮发现并修复了 User-M 外部进程边界审计对 host opt-in 状态的断言漂移。当前验收命令全部通过,`unexpected_fail=0``axis/vismach/millturn/example.ngc` 仍按 `L4-USER-M-PROCESS` 保持条件边界,不自动晋级。
### 下一步
无当前矩阵内新增待办。若后续要让 `millturn` User-M 行晋级,必须显式启用并通过 `ENABLE_MILLTURN_USER_M_RUNTIME_PROBE=1` 的 native runtime probe再补 Node/browser promotion gate 和人工 promotion lock 更新。
## 2026-07-09 21:01 EDT ACC-001 到 ACC-023 完成后复验
### 本轮目标
按用户要求复核 `/home/mes123456/cnc_wams/完善wasm` 文档要求是否已全部落实,重新执行发布前必跑命令和专项补充命令,确认 `ACC-001``ACC-023` 的完成/条件通过结论仍成立。
### 已做事项
- 读取 `完善wasm/working/README.md``01-项目功能内容.md``02-项目程序开发详细步骤.md``04-任务矩阵.md``05-验收证据.md` 和验收标准全文。
- 确认任务矩阵当前没有新增待办项,`ACC-001``ACC-023` 均已标为完成、条件通过或明确 Blocked 边界。
- 复跑基线、vendor 同步、禁止自研 CNC 语义、Native、WASM Node、OPFS、UI Node、真实浏览器、host 聚合和 Python remap/tool DB 专项验证。
- 确认所有复验命令均以 0 退出,`unexpected_fail=0`Python remap、User M 外部进程、硬件驱动、实时内核仍保持条件通过或 Blocked不改写为无条件 full-process 支持。
### 修改文件
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/05-验收证据.md`
- `gptlog-process/gpdlog.md`
- `web-rtcp-5axis-sim-plan/gptlog-process/gpdlog.md`
### 验证情况
- `./tools/verify_upstream_baseline.sh && ./tools/verify_vendor_sync.sh && ./tools/verify_no_standalone_cnc_semantics.sh` 通过。
- Native 复验通过:`nc_files``107 total / 101 pass / 6 expected_fail / 0 unexpected_fail``configs/sim``159 total / 151 pass / 8 expected_fail / 0 unexpected_fail`
- WASM/OPFS/UI Node 复验通过INI、interp、sim configs、sim inventory、nc_files、TP、OPFS file service、UI node smokes 均为 oksim inventory 为 `executed=29 passed=29 skipped=130 unexpected_fail=0`
- 浏览器和 host 复验通过INI panel browser、interp browser、host smokes 均为 okhost 聚合最终输出 `host_wasm_opfs_browser_smokes=ok`
- 专项补充复验通过Python remap WASM row proof、browser row proof 和 tool DB node runtime adapter 均为 ok。
### 结论
`完善wasm` 当前文档要求对应的全部工作已完成并通过复验。`ACC-001``ACC-023` 的闭合结论有效,发布前必跑命令和专项补充命令均通过,未知失败为 0。
### 下一步
无当前矩阵内下一任务。后续若要解除 Python remap、User M 外部进程、硬件驱动、实时内核等条件边界,必须先新增任务编号、源码归属、验收标准和 gate。
## 2026-07-09 20:24 EDT ACC-001 到 ACC-023 完整验收闭合
### 本轮目标
按用户要求完成 `/home/mes123456/cnc_wams/完善wasm/working` 的全部工作,将总体验收矩阵从初始待办推进到当前可执行 LinuxCNC/WASM/Web 验收包闭合。
### 已做事项
-`/home/mes123456/cnc_wams/linuxcnc` 固定到验收基线 `60597ee0718873d2449058c824262a275e5e4bad`,并确认 upstream baseline gate 通过。
- 清理 `vendor/linuxcnc` 与固定基线不一致的新增配置文件,重新执行 source extraction使 vendor sync 与 `tools/source-manifest.txt` 对齐。
- 将 WASM task 子集文件从 vendor 树移到 `runtime/core/linuxcnc_task_subset/`,避免本地 shim 污染 vendored LinuxCNC 源码同步。
- 修正 Emscripten 环境自动加载、INI WASM bool 读取、sim inventory Python remap/manual lock 规则、release readiness/SDK/UI/browser 快照和 docs tracker fallback。
- 修正 tool DB / Python remap 专项测试的源码路径、Python remap WASM/browser row proof 的 locked-runtime 断言、native `G10 L11` 快照。
- 更新总任务矩阵 `ACC-001``ACC-023` 的状态可无条件通过的任务标为完成Python remap、User M 外部进程、硬件/实时等保持条件通过或 Blocked 边界。
### 修改文件
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/05-验收证据.md`
- `完善wasm/working/06-决策记录.md`
- `wasm-port/tools/source-manifest.txt`
- `wasm-port/tools/wasm_incremental_build_lib.sh`
- `wasm-port/tools/build_ini_panel.sh`
- `wasm-port/tools/build_task_hal_wasm.sh`
- `wasm-port/runtime/core/linuxcnc_task_subset/*`
- `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp`
- `wasm-port/runtime/sdk/src/linuxcnc-ini.js`
- `wasm-port/runtime/sdk/src/linuxcnc-hal.js`
- `wasm-port/runtime/sdk/src/project-release-readiness.js`
- `wasm-port/runtime/ui/simulation/index.html`
- `wasm-port/tests/**`
- `wasm-port/docs/**`
- `wasm-port/vendor/linuxcnc/**`
### 验证情况
- 上游、vendor、禁止自研语义 gate 均通过。
- Native`verify_native_probes.sh``verify_nc_files.sh``verify_sim_configs.sh` 均通过native sim 为 `159 total / 151 pass / 8 expected_fail / 0 unexpected_fail`nc_files 为 `107 total / 101 pass / 6 expected_fail / 0 unexpected_fail`
- WASM NodeINI、interp、sim configs、sim inventory、nc_files、TP、tool DB、Python remap row proof 均通过sim inventory 为 `executed=29 passed=29 skipped=130 unexpected_fail=0`
- OPFS/UI/Browser/HostOPFS file service、UI node smokes、INI panel browser、real simulation browser、axis screenshot、OPFS session browser、interp browser、host 聚合全部通过。
- Python remap 专项SDK、WASM row proof、browser row proof 通过,但仍保持 `manual_promotion_lock`,不宣称无条件 full-process 支持。
### 结论
`ACC-001``ACC-023` 已按当前可执行验收包闭合。发布前完整命令包通过,`unexpected_fail=0`Python remap、User M 外部进程、硬件驱动、实时内核等边界已明确记录为条件通过或 Blocked。
### 下一步
无当前矩阵内下一任务。后续若要解除 Python remap/User M/硬件实时边界,必须新增 ACC 任务、源码归属、验收标准和 gate 后再实施。
## 2026-07-09 初始文档体系创建
### 本轮目标
`/home/mes123456/cnc_wams/完善wasm/03完全对标LinuxCNC的可执行验收标准.txt`,在 `/home/mes123456/cnc_wams/完善wasm/working` 创建后续推进文档,指导 `wasm-port` 继续按 LinuxCNC 源码和测试资产闭环完善。
### 已做事项
- 阅读新的完全对标验收标准,提取基准锁定、证据优先级、分层验收、核心模块、上游测试纳入、功能晋级和最终判定规则。
- 查看 `wasm-port/working` 既有推进文档,确认已有 task/status JSON 工作已在原目录闭合,新目录应作为更高层总验收推进入口。
- 创建 README、功能内容、开发步骤、推进台账、任务矩阵、验收证据、决策记录 7 个文档。
- 将后续工作拆成 `ACC-001``ACC-023` 任务覆盖基线、解释器、configs/sim、Task/NML、TP/Motion/Kinematics、HAL、Tool/IO、OPFS、UI、多实例、性能和发布验收。
### 修改文件
- `完善wasm/working/README.md`
- `完善wasm/working/01-项目功能内容.md`
- `完善wasm/working/02-项目程序开发详细步骤.md`
- `完善wasm/working/03-推进台账.md`
- `完善wasm/working/04-任务矩阵.md`
- `完善wasm/working/05-验收证据.md`
- `完善wasm/working/06-决策记录.md`
### 验证情况
- 本轮为文档创建,未修改 `wasm-port` 源码。
- 已通过文件清单检查确认目标文档存在。
- 后续真实验收命令应从 `04-任务矩阵.md``ACC-001` 开始执行并补录到 `05-验收证据.md`
### 结论
初始推进文档体系已建立。后续不能直接跳到代码实现,必须先选任务编号、确认 LinuxCNC 归属、执行对应最小验收包并同步证据。
### 下一步
执行 `ACC-001``ACC-004`:锁定上游基线、校验 vendor 同步、运行自研语义禁止检查、盘点现有必跑命令现状。
## 2026-07-10 ACC-039 HAL Component Precompile Runtime Gate
### 本轮目标
承接 `ACC-038`,用锁定 LinuxCNC `halcompile` 把五个基础 `.comp` 推进到可复现生成、预编译 WASM、真实 thread/net 执行和目标 Web 代表配置消费。
### 已做事项
- 新增生成器、generation report 和 precompile manifest。
- 扩展 HAL runtimeallowlist factory、`hal_export_funct` callback、`addf` 绑定、servo step 执行、HAL_OUT signal 传播、未知/非法 loadrt blocked、方向箭头解析和 session reset。
- 将五个生成 C 单元加入 task-HAL WASM 构建,并用组件前缀隔离 halcompile 全局符号。
- 新增 manifest、truth-table/formula、thread/net 三个 WASM Node gate和 truth-table JSON evidence。
- 目标 Web 项目新增 XYZAC `J0_mux/rpm_rps` 同 runtime 代表配置 gate并挂入 `smoke:node`
- 修复本机系统 Emscripten/Binaryen 版本不匹配,构建入口优先加载已有 EMSDK。
- 补充 native probe 构建通过;全量 native sim 枚举在上游缺失 `xyzac.var` 的 XYZAC fixture 出现 1 个 Bus error/unexpected fail未掩盖为 expected-fail也不计入本轮通过命令。
### 结论
`ACC-039/INT-026` 完成。4.7-4.11 可在 Web/WASM simulation 边界内标记 L3 条件通过4.16 仅允许固定 allowlist动态加载、宿主实时与硬件继续 Blocked。
## 2026-07-10 ACC-040/ACC-041 Meter-Scope 与 Host Evidence
- 新增唯一 Meter/Scope schema/采样模块、两个 wasm gate 和 Web gate正式 `evidence:web`/`compare` 顶层字段通过。
- 新增 host evidence 生成器,逐 family 哈希当前 TSV/gate artifact三个 host gate 与 Web separation gate 通过。
- 全程未设置 opt-in 环境变量,未启动宿主外部进程,未解除 promotion lock。
- 结论:`INT-027/INT-028` 完成Meter/Scope 为 Web/WASM L3 条件通过host promotion/realtime/hardware 仍 false。
## 2026-07-10 ACC-042 Remaining Runtime Cases
- 修复 WASM interpreter 未从 INI 读取 `TRAJ.SPINDLES` 的缺口并通过 `$1`/G95 gate。
- vendored `gantry_mm` 三文件并通过 source/vendor 与 Web representative gate。
- 补 session override 隔离、XYZAC G81 斜面钻孔和既有软限位证据绑定。
- 完整 interp、Task-HAL 和 Web smoke 通过。
## 2026-07-10 ACC-043/ACC-044 Motion 最终缺口与收口审计
- 按 LinuxCNC control.c 公式实现并验证 FERROR 动态阈值。
- 按 joint jog-counts/enable/scale 语义实现并验证 virtual MPG 正反脉冲。
- Motion、Task-HAL 回归通过。
- 125 项表已无未分类“待实现/待补”剩余全部登记为需修订、manual lock 或 hardware/realtime Blocked。
## 2026-07-10 ACC-045 Native 全量回归最终收口
### 本轮目标
复核 `ACC-039` 留下的 XYZAC `xyzac.var`/Bus error historical unexpected failure统一最终 native 发布口径。
### 已做事项
- 确认当前 source manifest/vendor overlay 已提供 XYZAC fixture 所需资产。
- 串行运行完整 `./tests/native/verify_native_probes.sh`,避免并发 native harness 相互影响。
- 新增 `33-Native全量回归最终收口.md`,并同步 README、任务矩阵、联合矩阵、证据和交付索引。
-`27` 的历史失败记录追加后续解除说明,保留问题发生史而不再将其视为当前失败。
### 验证情况
- sim-config`159 total / 151 pass / 8 expected_fail / 0 unexpected_fail`
- nc_files`107 total / 101 pass / 6 expected_fail / 0 unexpected_fail`
- 完整命令退出码为 `0`,输出 `native probe validation complete`
### 结论
`ACC-045/INT-032` 完成。历史 XYZAC native unexpected failure 已解除硬件、realtime、动态加载和人工 promotion 边界不变。
### 下一步
当前授权范围内无开放实现项。仅在提供新上游/fixture、真实硬件环境或明确 opt-in/人工 review 授权时新增任务。
## 2026-07-10 ACC-046 04 验收口径修订与三 Session Gate
### 本轮目标
继续处理 `32` 中可通过修订验收口径闭合的条目,并为 04 的三实例要求提供可执行 gate。
### 已做事项
- 将 G68/G69、G51.1/G50.1 改为 LinuxCNC `G10 L2 Pn R/R0` 坐标旋转设置/取消。
- 将固定“最多三通道”改为至少三个独立 Web session并把现有 override gate 扩展到三个 store。
- 将 G43.4/M18/RTCP off 等不准确表述改为 M19、TRT kinematics、G43.1/G49 刀偏边界。
- 将 A 轴范围绑定到 `xyzac-trt.ini [AXIS_A] -100..50`
- 将不存在的 `sphere.ngc` 替换为 `xyzbc_switchkins.ngc``boat-xyzbc/boat-xyzac.ngc`
- 修订 04 最终结论,明确 97.6% 是文档项覆盖率,不代表硬件、实时或完整 native topology。
- 新增 `34` 并同步 README、矩阵、125 项绑定表、复核文档和收口审计。
### 验证情况
- 三 session gate 输出 `three_session_override_isolation=ok`
- 解释器全量 WASM gate 输出 `interp_wasm_node_smoke=ok`
- 125 项编号和绑定行保持一致。
### 结论
`ACC-046/INT-033` 完成。04 的已知版本/fixture/范围错误已改为锁定 LinuxCNC 源码口径;剩余边界均需要外部环境、动态预编译专项或人工授权。
## 2026-07-10 ACC-047 三解释器同步、Wrapped Rotary 与角轴限速 Gate
### 本轮目标
闭合 5.1、5.3、5.5、8.3、8.10 中仍可在当前软件环境实施的专项证据。
### 已做事项
- 新增三个独立 interpreter WASM module 的 G5x/rotation/M62 隔离和同步编排 gate并挂入 Web 主 smoke。
- 将上游 `wrapped_rotary.ini` 加入 source manifest/vendor扩展 INI parser 读取 `WRAPPED_ROTARY`
- 给叶轮 gate 增加 4066 个旋转进给段的角距离/角速度/G93 时长断言。
- 首次数值 gate 发现请求峰值远超 INI 上限且 timing 未延长;修复 `execution-timing.js`,让 inverse-time、线轴限速和角轴限速共同决定最终时长。
- 新增 `35` 并同步矩阵、125 项表、复核文档和收口审计。
### 验证情况
- 三解释器、G5x/rotation、canonical sync、wrapped rotary gate 全部输出 ok。
- 叶轮旋转段为 40666 段受约束;请求峰值约 319782.84,实际峰值和 INI 上限均为 1800 deg/min。
- Web 主 smoke、linear-unit、INI parser、vendor 和 sim-config WASM 回归通过。
### 结论
`ACC-047/INT-034` 完成。当前软件证据缺口进一步收口,剩余项均需硬件/实时环境、动态预编译专项或人工授权。
## 2026-07-10 ACC-048 Web Software Parity Release Gate 与 Host 分离
### 本轮目标
把新增软件专项接入项目发布硬门禁,并消除 project release readiness 对 host opt-in proof 的错误依赖。
### 已做事项
- 新增跨项目 `verify_web_software_parity_gate.sh` 并加入 release manifestgate 总数从 13 升为 14。
- 更新 manifest、artifact writer/validator、SDK 测试和 INI panel UI 的 gate 数量与行契约。
- 修正 readinessTool DB/Python blocked summary 必须结构有效,但不再阻止 Web software release违规 promotion 仍阻止发布。
- 新增 `36` 并同步总控文档。
### 验证情况
- parity 聚合 gate 输出 `web_software_parity_gate=ok`
- manifest、artifact、UI、SDK 和 release/host separation gate 全部通过。
- 最终 artifact 为 14/14、ready=true、missing=[]Tool DB proof false、Python 单 fixture proof trueblocked families 均未 promotion。
- 完整 gate 首次暴露既有隐式 opt-in 环境开关;已移除并新增静态防回归断言,随后按默认禁用模式重跑通过。
### 结论
`ACC-048/INT-035` 完成。软件发布和宿主能力 promotion 已在同一主 artifact 中一致分离。
## 2026-07-10 ACC-049 Wrapped Rotary 静态发布资产 Gate
- 发现 static build 未复制 wrapped rotary开发 gate 通过但发布包缺资产。
- 扩展 `build-static.mjs`,复制到普通 config 和 vendored config 两条 dist 路径。
- 扩展三解释器专项 gate对主 vendor 与两个 dist 文件做字节一致检查。
- static build 与 parity gate 通过,输出 `wrapped_rotary_static_assets=ok`
- 结论:`ACC-049/INT-036` 完成8.3 静态发布资产闭合。
## 2026-07-10 ACC-050 Web Software Parity 自包含构建 Gate
- 发现 parity gate 依赖其他 gate 已构建 dist单独执行不自包含。
- 在 parity shell 首步加入标准 static build再执行所有 dist consumer。
- manifest 单测锁定 build 命令存在且位于三解释器资产检查之前。
- parity gate 和两种 cwd manifest 测试通过。
- 结论:`ACC-050/INT-037` 完成。
## 2026-07-10 ACC-051 静态发布 Python 缓存清理 Gate
- static build 前发现 dist 有 2 个 `__pycache__` 目录和 4 个 `.pyc`
- 为所有递归静态资产 copy 增加统一过滤器。
- 新增完整 dist hygiene Node gate并接入 parity 的 build 后第一项验证。
- 重建后 Python cache/bytecode 数量为 0parity 通过。
- 结论:`ACC-051/INT-038` 完成。
## 2026-07-10 ACC-052 静态发布双构建可复现性 Gate
- 新增规范化 dist 树摘要,覆盖路径、类型、权限、符号链接目标和文件内容。
- parity 首次 build 后再次 build要求两次摘要完全一致。
- 当前结果为 923 entries、824 files、SHA-256 `824753...e07cc`
- parity 与 manifest 顺序 gate 通过。
- 结论:`ACC-052/INT-039` 完成。
## 2026-07-10 ACC-053 User-M/Python Remap WASM/Web 完整移植
- 将 millturn M128/M129 及 27 个唯一 Python remap 源纳入 source/vendor/static 发布资产。
- LinuxCNC interpreter WASM 内置 M128/M129 handler实际更新 mill/turn HAL 轴限位并输出 `USER_M_RESULT`
- 引入本地 `pyodide@314.0.2`,实现 CPython/WASM Worker provider、LinuxCNC bridge modules、TOPLEVEL/module/callable/generator 生命周期。
- 真实 Node 与 Chromium 执行 stop-lookahead `queuebuster`,首次 yield 为 253 inventory rows/27 Python 源由 CPython/WASM 全量编译。
- 目标 Web 接入 Python remap readinessM128/M129 同步 Web HAL/staterequired parity gate 实际执行全部新 gate。
- release artifact 更新为 `blockedRuntimeFamilies=[]`、Python execution/promotion/bulk promotion ready宿主外部进程、实时与硬件继续锁定。
- 结论:`ACC-053/INT-040` 完成。