结论:完成 LinuxCNC kinematics WASM ABI 覆盖,并将 web-rtcp-5axis-sim-plan 的 RTCP frame/boundary adapter 接到 xyzac-trt kinematics SDK;Node、build、browser smoke 验证通过。
248 lines
6.7 KiB
Plaintext
248 lines
6.7 KiB
Plaintext
text37.txt
|
||
|
||
一、接续说明
|
||
|
||
执行时间:2026-06-20 CST
|
||
|
||
本文件对应 `text36.txt` 的第一阶段执行结果:
|
||
|
||
```text
|
||
把 real_simulation_page_smoke.html 中剩余重复断言先扫出来,形成清单;
|
||
本轮不继续抽 helper,不改 runtime,不改 smoke 逻辑。
|
||
```
|
||
|
||
扫描范围:
|
||
|
||
```text
|
||
wasm-port/tests/browser/real_simulation_page_smoke.html
|
||
只看 blocked / saved ready / restored ready 三段 handoff 相关断言
|
||
```
|
||
|
||
二、扫描结论总览
|
||
|
||
当前 `summary / operator snapshot / action plan / compact status / preflight / history`
|
||
这一批兼容入口,已经基本完成从三态大 if 向 helper 的迁移。
|
||
|
||
剩余的重复断言主要集中在另一批主题:
|
||
|
||
```text
|
||
review/statusbar/external-shell
|
||
```
|
||
|
||
更具体地说,当前还残留在三态大 if 中、且具有明显重复结构的内容,主要是:
|
||
|
||
```text
|
||
1. handoff review note / review packet / review packet copy-export / review packet verification / review packet badge;
|
||
2. handoff statusbar snapshot / statusbar receipt / statusbar receipt verification / statusbar receipt badge;
|
||
3. handoff external shell badge snapshot / badge copy-export;
|
||
4. 上述对象对应的一批 document.body.dataset 兼容镜像检查。
|
||
```
|
||
|
||
三、按主题的剩余重复断言清单
|
||
|
||
1. review packet 组
|
||
|
||
当前仍重复出现在 blocked / saved ready / restored ready 三态中的对象字段检查:
|
||
|
||
```text
|
||
- ReviewNote:
|
||
phase / action / preflight / latestHistory / noteText
|
||
|
||
- ReviewPacket:
|
||
phase / action / preflight / latestHistory /
|
||
packet.reviewNote / packet.preflight / packetJson parse 后关键字段 /
|
||
digest 正则
|
||
|
||
- ReviewPacketCopyExport:
|
||
phase / ready / action / preflight / digest /
|
||
packetJson / reviewNote / copyText / exportText / summaryText
|
||
|
||
- ReviewPacketVerification:
|
||
phase / ready / statusText /
|
||
digestMatches / jsonParseReady / reviewNoteMatches / preflightMatches /
|
||
digest / preflight / reviewNote / packetJson / rows.length / rows.every(ready) /
|
||
summaryText
|
||
|
||
- ReviewPacketVerificationBadge:
|
||
phase / statusText / ready / readyCount / totalCount /
|
||
badgeState / badgeText / statusbarBadgeText / statusbarBadgeState / digest
|
||
```
|
||
|
||
判定:
|
||
|
||
```text
|
||
这组里有两类内容混在一起:
|
||
1. 对象契约:应保留一部分在大 if;
|
||
2. dataset / DOM 镜像:适合继续抽 helper。
|
||
```
|
||
|
||
建议下一轮优先处理:
|
||
|
||
```text
|
||
先抽 review packet 组的 dataset / DOM 镜像一致性;
|
||
对象自身字段契约暂时保留在大 if。
|
||
```
|
||
|
||
2. statusbar 组
|
||
|
||
当前仍重复出现在三态中的对象字段检查:
|
||
|
||
```text
|
||
- StatusbarSnapshot:
|
||
phase / action / preflight / packetBadgeText / packetBadgeState /
|
||
digest / baseline / ready / summaryText
|
||
|
||
- StatusbarReceipt:
|
||
phase / action / preflight / badge / packetBadgeState /
|
||
digest / baseline / ready / receiptText / copyText / summaryText
|
||
|
||
- StatusbarReceiptVerification:
|
||
phase / ready / statusText /
|
||
receiptMatches / digestMatches / badgeMatches /
|
||
summaryText / receiptText / digest / badge / baseline
|
||
|
||
- StatusbarReceiptBadge:
|
||
phase / statusText / ready / readyCount / totalCount /
|
||
receiptBadgeState / receiptBadgeText /
|
||
statusbarReceiptBadgeText / statusbarReceiptBadgeState / digest
|
||
```
|
||
|
||
同时仍残留的一批 dataset 兼容镜像检查:
|
||
|
||
```text
|
||
document.body.dataset.evidenceSessionHandoffStatusbarReceipt*
|
||
document.body.dataset.evidenceSessionHandoffStatusbarReceiptVerification*
|
||
document.body.dataset.evidenceSessionHandoffStatusbarReceiptBadge*
|
||
```
|
||
|
||
判定:
|
||
|
||
```text
|
||
这组重复程度很高,且 blocked / saved ready / restored ready 结构高度对称;
|
||
很适合继续抽成共享 helper。
|
||
```
|
||
|
||
建议下一轮优先级:
|
||
|
||
```text
|
||
高优先级
|
||
```
|
||
|
||
3. external shell badge 组
|
||
|
||
当前仍重复出现在三态中的对象字段检查:
|
||
|
||
```text
|
||
- ExternalShellBadgeSnapshot:
|
||
phase / action / preflight / packetBadgeText / receiptBadgeText /
|
||
baseline / digest / ready / shellBadgeState / shellBadgeText /
|
||
statusbarShellBadgeText
|
||
|
||
- ExternalShellBadgeCopyExport:
|
||
phase / action / preflight / ready /
|
||
shellBadgeState / shellBadgeText / copyText / exportText / summaryText / digest
|
||
```
|
||
|
||
同时仍残留的一批 dataset 兼容镜像检查:
|
||
|
||
```text
|
||
document.body.dataset.evidenceSessionHandoffExternalShellBadgeSnapshot*
|
||
```
|
||
|
||
判定:
|
||
|
||
```text
|
||
这组与 statusbar 组一样,结构很规整,blocked / ready 两态几乎只变 phase / text;
|
||
适合继续抽 helper。
|
||
```
|
||
|
||
建议下一轮优先级:
|
||
|
||
```text
|
||
高优先级
|
||
```
|
||
|
||
4. external shell bundle / receipt audit bundle 组
|
||
|
||
当前状态:
|
||
|
||
```text
|
||
这组大部分 dataset / DOM 镜像检查已经由现有 assertExternalShell* helper 覆盖;
|
||
在三态大 if 中剩余的更多是对象字段契约检查,而不是重复的镜像检查。
|
||
```
|
||
|
||
判定:
|
||
|
||
```text
|
||
短期内不应优先再抽;
|
||
除非发现新的大块 dataset / DOM 镜像重复,否则这组先保持现状。
|
||
```
|
||
|
||
建议下一轮优先级:
|
||
|
||
```text
|
||
低优先级
|
||
```
|
||
|
||
四、按类型划分:哪些更像“对象契约”,哪些更像“兼容镜像”
|
||
|
||
建议继续保留在三态大 if 中的检查:
|
||
|
||
```text
|
||
1. apiName
|
||
2. phase / ready / statusText / baseline / digest
|
||
3. rows.length / rows.every(ready)
|
||
4. JSON.parse(packetJson) 后的关键字段
|
||
5. packet / snapshot / receipt / bundle 等对象内部结构是否成立
|
||
```
|
||
|
||
建议继续迁移到 helper 的检查:
|
||
|
||
```text
|
||
1. document.body.dataset.* 镜像值;
|
||
2. diagnostics panel 文本镜像;
|
||
3. statusbar 文本镜像;
|
||
4. 只读 DOM value 节点文本镜像;
|
||
5. phase/action/preflight/digest 派生出的短文本镜像。
|
||
```
|
||
|
||
五、第一阶段产出结论
|
||
|
||
本轮扫描后的结论是:
|
||
|
||
```text
|
||
1. summary / operator / preflight / history 这条线已经基本收平;
|
||
2. 剩余真正需要继续收尾的重点,是 review/statusbar/external-shell badge 这组;
|
||
3. 下一轮最值得继续抽 helper 的,是:
|
||
- review packet 组的 dataset / DOM 镜像;
|
||
- statusbar 组的 dataset / DOM 镜像;
|
||
- external shell badge snapshot / copy-export 的 dataset / DOM 镜像;
|
||
4. receipt audit bundle 这组暂时不是主要尾项;
|
||
5. 下一轮不应重新扫描全文件,而应直接按上面三组进入第二阶段 helper 提取。
|
||
```
|
||
|
||
六、建议下一轮入口
|
||
|
||
推荐下一轮直接执行 `text36.txt` 第二阶段,但按下面优先级推进:
|
||
|
||
```text
|
||
优先级 1:statusbar 组
|
||
优先级 2:external shell badge 组
|
||
优先级 3:review packet 组
|
||
优先级 4:最后再看是否还需要补 external shell bundle / audit bundle
|
||
```
|
||
|
||
建议下一轮的最小目标:
|
||
|
||
```text
|
||
至少把 statusbar + external shell badge 这一批 dataset / DOM 重复断言继续抽走;
|
||
完成后重新运行 browser_real_simulation_page_smoke。
|
||
```
|
||
|
||
七、建议验证命令
|
||
|
||
```bash
|
||
git diff --check
|
||
SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_real_simulation_browser.sh
|
||
```
|