Files
cnc_wams/完善wasm/working/36-Web-Software-Parity-Release-Gate与Host分离实施记录.md
2026-07-10 21:26:42 -04:00

68 lines
3.3 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.
# Web Software Parity Release Gate 与 Host 分离实施记录
## 目标
本文件落实 `ACC-048/INT-035`,把 `ACC-046/047` 的新软件证据接入项目 release manifest并修正 project release readiness 仍错误依赖 host opt-in proof 的模型矛盾。
## 新增 Release Gate
新增 `wasm-port/tests/host/verify_web_software_parity_gate.sh`,聚合执行三 interpreter G5x/rotation/M62 隔离与 wrapped rotary、XYZAC impeller G93 角轴限速、linear unit conversion 和目标 Web 主 Node smoke。
gate 以 `web_software_parity_gate=ok` 作为完成输出,并加入 `REQUIRED_RELEASE_GATES`。release manifest 从 13 项升级为 14 项SDK、artifact writer、artifact validator 和 INI panel UI 固定计数同步更新。
## Release 与 Host 分离
`createProjectReleaseReadinessReport()` 同时要求 Tool DB native protocol 和 Python remap native lifecycle ready导致普通 writer 在 opt-in 默认禁用时生成 blocked project release artifact。这与既有 `projectReleaseReady=true``hostPromotionAllowed=false` 合同冲突。
修复后:
- project release ready 由 14 项软件 gate、inventory、virtual HAL coverage/matrix、未违规 promoted blocked family 和截图合同决定;
- Tool DB/Python summary 仍必须结构完整、保持 `promotionAllowed=false``executionEnabled=false`
- host proof 未运行时其 `ready=false` 作为边界事实展示,但不阻止 Web software release
- 任何 blocked runtime family 被 promotion 仍会阻止 release readiness。
artifact validator 相应区分“proof contract 有效”和“host proof ready”不再把合法 blocked summary 误判为 artifact schema 缺失。
## 最终 Artifact 状态
```text
phase=ready
ready=true
missing=[]
release gates=14/14 passed
web-software-parity=passed (expected-output)
toolDbProcessProofReady=false
pythonRemapRuntimeProofReady=true (single fixture)
blockedRuntimeFamilies=L4-USER-M-PROCESS,L4-PYTHON-REMAP
promotedBlockedFamilies=[]
```
## Opt-In 安全修复
完整复验时发现既有 `verify_project_release_gate.sh` 硬编码三个 `ENABLE_*_RUNTIME_PROBE=1`。该旧行为曾在本轮首次完整 gate 中触发本地主机 probes使 Python 单 fixture proof 更新为 readypromotion 仍未启用。
现已移除全部 opt-in 环境开关,普通 release gate 只运行默认禁用的 native validation并明确调用 Web software parity gate。manifest 单测从测试文件路径读取 release 脚本,强制断言:
```text
包含 verify_web_software_parity_gate.sh
不包含 ENABLE_*_RUNTIME_PROBE=1
```
修复后完整 release gate 重新通过。当前 artifact 忠实保留已产生的 Python 单 fixture proof但 Tool DB proof 仍 false所有 host promotion 仍 locked。
## 验证输出
```text
web_software_parity_gate=ok
project_release_gate_manifest_node_smoke=ok
project_release_readiness_artifact_node_smoke=ok
ini_panel_ui_shell_node_smoke=ok
project_release_host_promotion_separation=ok
realtime_hardware_remain_blocked=ok
sdk_surface_node_smoke=ok
```
## 结论
`ACC-048/INT-035` 完成。新增软件 parity 证据已成为项目发布硬门禁Web release ready 与 host promotion blocked 现在在主 readiness artifact、validator 和 UI 中一致表达。普通 release gate 已恢复默认不运行 opt-in probe。