继续完成 web-rtcp-5axis-sim-plan

结论:完成 LinuxCNC kinematics WASM ABI 覆盖,并将 web-rtcp-5axis-sim-plan 的 RTCP frame/boundary adapter 接到 xyzac-trt kinematics SDK;Node、build、browser smoke 验证通过。
This commit is contained in:
2026-06-21 16:44:29 +08:00
parent a6eda3fbff
commit 626bcfe8e3
101 changed files with 101586 additions and 770 deletions

215
textbak/text35.txt Normal file
View File

@@ -0,0 +1,215 @@
text35.txt
一、接续说明
执行时间2026-06-20 CST
本文件作为 `text34.txt` 之后的新接续文件,用来明确区分两条并行工作线:
```text
1. 当前实际进行中的工作real simulation page handoff smoke 断言收敛;
2. 已经完成结论但尚未继续推进的工作:剩余 77 个 SKIP 中哪些是真正可 promotion 的 main-program row。
```
本文件的目标不是重新打开 77 SKIP 结论,而是把“当前在做什么、已经完成什么、后续该接哪条线”写清楚,避免继续混线。
当前继续保持项目边界:
```text
LinuxCNC remains the only CNC semantic source
promotionAllowed=false
baselineChanging=false
inventoryBaselineUnchanged=true
inventory baseline=82/82/77/0
diagnostics artifact schema unchanged
release artifact schema unchanged
```
二、我当前实际在做的工作
本轮实际在做的不是 77 SKIP promotion 复核,而是:
```text
real simulation page handoff browser smoke 断言收敛
```
范围:
```text
文件wasm-port/tests/browser/real_simulation_page_smoke.html
目标:把 blocked / saved ready / restored ready 三态大 if 中重复的 handoff 兼容入口旧断言,继续迁移到共享 helper
不改 runtime surface
不改 diagnostics artifact schema
不改 release artifact schema
不改 inventory baseline=82/82/77/0。
```
本轮已完成:
```text
1. 新增 handoff summary / operator snapshot / action plan / compact status / preflight / history 的共享 smoke helper
2. 将三态大 if 中对应的 dataset / DOM / status-history 重复断言迁移到 helper
3. 补上 restored ready 分支缺失的 actionPlan / compactStatus 读取;
4. 删除同一批 helper 已覆盖的旧兼容断言,减少测试重复;
5. 保持 review/statusbar/external shell 相关 getter 行为不变;
6. 浏览器 smoke 继续通过。
```
本轮已运行验证:
```text
git diff --check
SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_real_simulation_browser.sh
```
结果:
```text
browser_real_simulation_page_smoke=ok
```
三、“剩余 77 个 SKIP promotion 复核”已经完成了哪些工作
这条线并不是未开始,而是已经完成一轮明确结论。对应记录主要在:
```text
text28.txt
text31.txt
text32.txt
wasm-port/docs/sim-config-coverage-promotion-analysis.md
wasm-port/docs/sim-configs-coverage-handoff.md
```
已完成工作:
```text
1. 重新生成并复核了 sim-config inventory baseline
2. 固化了当前 baselinePASS=82 / SKIP=77 / unexpected_fail=0
3. 新增并检查了 remaining-skip-main-program-promotion-audit.tsv
4. 把 77 个 SKIP 按 skip_kind 分解清楚;
5. 确认其中真正 class=main 的 skipped row 只有 2 个;
6. 确认这 2 个 main-program skipped row 当前都 promotion_allowed=0
7. 记录了“不应再试图把剩余 77 个 SKIP 直接改 PASS”的结论。
```
当前固定 inventory 结果:
```text
sim_configs_wasm_node_inventory_executed=82
sim_configs_wasm_node_inventory_passed=82
sim_configs_wasm_node_inventory_skipped=77
sim_configs_wasm_node_inventory_unexpected_fail=0
sim_configs_wasm_node_inventory_skip_ASSET_ONLY=65
sim_configs_wasm_node_inventory_skip_L4_USER_M_PROCESS=1
sim_configs_wasm_node_inventory_skip_NON_MAIN_CLASS=10
sim_configs_wasm_node_inventory_skip_UPSTREAM_DEMO=1
```
四、77 个 SKIP promotion 复核的最终结论
当前结论已经明确:
```text
剩余 77 个 SKIP 中,没有真正可直接 promotion 的 skipped main-program row。
```
原因拆解:
```text
1. ASSET-ONLY=65
- 不是 standalone main-program row
- 不属于 inventory promotion 目标。
2. NON_MAIN_CLASS=10
- 不是 standalone main-program row
- 不属于 inventory promotion 目标。
3. L4-USER-M-PROCESS=1
- path=axis/vismach/millturn/example.ngc
- 属于 main-program row
- Web / virtual HAL 状态 proof 已接入;
- 但 external user-M arbitrary process execution 仍 disabled
- promotion_allowed=0。
4. UPSTREAM-DEMO=1
- path=axis/vismach/5axis/table-rotary_spindle-rotary-nutating/demos/incremental_repetition_g533.ngc
- 属于 main-program row
- upstream demo 本身缺失 motion G-code
- promotion_allowed=0。
```
因此当时的固定结论是:
```text
remaining_skipped_main_program_rows=2
remaining_skipped_main_program_promotion_allowed=0
direct_inventory_promotion_rows=0
baseline_change_allowed=no
```
五、这条 77 SKIP 线还没完成什么
如果按“是否找到可 promotion row”来衡量这条线已经完成结论
如果按“是否让 baseline 继续变化”来衡量,这条线没有继续推进,原因是当前结论本来就是:
```text
不允许继续从剩余 77 个 SKIP 中直接提升 PASS。
```
也就是说,未完成的不是“还没审完”,而是以下这些后续动作尚未展开:
```text
1. 没有新的 skipped main-program row 被解锁为 promotion_allowed=1
2. 没有新的 inventory PASS baseline 变化;
3. 没有继续解决 L4-USER-M-PROCESS native runtime probe 成为 promotion proof
4. 没有把后续工作转回“已 PASS row 的 browser diagnostics / release evidence 扩展”主线。
```
六、后续工作建议
后续工作应分两条,不要再混在一句“继续推进”里:
第一条,收尾当前 smoke 收敛:
```text
1. 继续把 real_simulation_page_smoke.html 中剩余的 review/statusbar/external-shell 兼容对象字段重复断言收平;
2. 保持 blocked / saved ready / restored ready 三态覆盖;
3. 不新增 runtime getter / dataset / DOM selector
4. 继续以 browser_real_simulation_page_smoke=ok 为完成标准。
```
第二条,若切回 77 SKIP / promotion 主线,不要重做旧结论,而是直接转向下面两类工作:
```text
1. 若继续攻 L4-USER-M-PROCESS
- 只聚焦 native runtime opt-in probe
- 目标是 runtime_state_probe_passed
- 只有 probe 真正通过后,才重开 inventory promotion 讨论。
2. 若继续按当前主线推进:
- 不再尝试 promotion 剩余 77 个 SKIP
- 直接扩展已 PASS row 的 browser diagnostics / release evidence
- 优先沿现有 five-axis TRT / vismach evidence expansion 路线继续做。
```
七、建议下一轮入口
推荐下一轮优先级:
```text
优先级 1完成当前 real simulation page handoff smoke 收敛收尾;
优先级 2如果要回到 promotion 主线,先选“继续 L4-USER-M-PROCESS probe”或“继续已 PASS row evidence expansion”二选一
优先级 3不要重新做“77 个 SKIP 哪些可 promotion”的总复核因为这一步已经有明确结论。
```
推荐验证命令:
```bash
git diff --check
SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_real_simulation_browser.sh
# 如果切回 promotion / inventory 主线,再补:
SKIP_INTERP_BUILD=1 wasm-port/tests/wasm/node/verify_sim_configs_inventory_wasm.sh
wasm-port/tests/docs/node/verify_sim_configs_coverage_docs.sh
wasm-port/tools/verify_no_standalone_cnc_semantics.sh
```