暴露项目发布 gate manifest API

This commit is contained in:
2026-06-16 10:31:50 +08:00
parent 6c087499fd
commit 343ad0acd6
12 changed files with 188 additions and 19 deletions

View File

@@ -3307,3 +3307,66 @@ ui_node_smokes=ok
继续只做实质能力推进。优先选择可执行 gate、SDK/API surface、或真实 browser workflow
不要做只整理断言或局部常量化的批次。
四十二、2026-06-16 继续执行记录project release gate manifest SDK API/gate
本轮继续按“每批必须产出可调用 API、可验证 workflow、可执行 gate、或真实 UI/browser 能力”推进,
把 project release required gates 从 SDK 内部常量提升为外部可调用 manifest API并新增独立 Node gate
验证 manifest 与 readiness report/artifact validation 共用同一套 gate 定义。
完成内容:
- `runtime/sdk/src/project-release-readiness.js` 新增:
- `createProjectReleaseGateManifest()`
- 新 manifest 返回:
- `apiName: project-release-gate-manifest`
- `manifestVersion: 1`
- `gateCount: 10`
- `gateIds`
- `gates[]` 的 `id/label/command/expectedOutput`
- `createProjectReleaseReadinessReport()` 现在内嵌同一 `gateManifest`
- `createProjectReleaseReadinessArtifactValidation()` 现在返回:
- `expectedGateCount`
- `expectedGateIds`
- `runtime/sdk/src/index.js` re-export 新 manifest API
- 新增可执行 SDK gate
- `tests/sdk/node/verify_project_release_gate_manifest.mjs`
- `tests/sdk/node/verify_project_release_gate_manifest.sh`
- `verify_sdk_surface.sh` 聚合运行新 gate
- `verify_sdk_surface.mjs` 覆盖 SDK export、report.gateManifest 和 validation expected gate fields
- `verify_project_release_readiness_artifact.mjs` 覆盖 expected gate fields
- `runtime/sdk/README.md`、`docs/project-release-handoff.md`、`verify_project_release_handoff_docs.mjs`
记录 manifest API
- `PROJECT_COMPLETION_TRACKER.md` 同步 latest completed batch 和 SDK/API surface 状态;
- 未新增控制按钮;
- 未执行 release gate/action-plan
- 未解析 G-code
- 未解释 canonical events
- 未新增 JS CNC 语义;
- 未运行 opt-in runtime probes
- 未 promotion blocked runtime family
- 未改变 LinuxCNC interpreter、tool、parameter、planner、kinematics、remap 或 LinuxCNC-owned
runtime semantics。
验证已通过(先行 targeted
```bash
wasm-port/tests/sdk/node/verify_project_release_gate_manifest.sh
wasm-port/tests/sdk/node/verify_sdk_surface.sh
wasm-port/tests/host/verify_project_release_readiness_artifact.sh wasm-port/tests/fixtures/project-release-readiness-ready.json
wasm-port/tests/docs/node/verify_project_release_handoff_docs.sh
```
关键输出:
```text
project_release_gate_manifest_node_smoke=ok
sdk_surface_node_smoke=ok
project_release_readiness_artifact_node_smoke=ok
project_release_handoff_docs_node_smoke=ok
```
下一步工作计划:
继续只做实质能力推进。优先选择可执行 gate、SDK/API surface、或真实 browser workflow
不要做只整理断言或局部常量化的批次。