新增 INI 面板 session readiness workflow report

This commit is contained in:
2026-06-16 07:04:04 +08:00
parent eb50e6b455
commit ce3d08ef61
12 changed files with 225 additions and 5 deletions

View File

@@ -1908,3 +1908,81 @@ host_wasm_opfs_browser_smokes=ok
继续以实质能力推进为主。下一批可为 `sessionReadiness` display row 增加独立 machine-readable
workflow report/helper或者把同一展示能力接入 workflow overview 页面自身;仍保持只读,不新增控制按钮,
不解析 G-code不扩大 LinuxCNC 语义边界。
二十四、2026-06-16 继续执行记录INI panel session readiness workflow report
本轮继续以功能实质性推进为主,为上一批 `sessionReadiness` display row 增加独立 machine-readable
workflow report/helper并暴露到 launch API 与 workflow overview 页面 API。外部 shell 现在可以直接读取
session readiness phase、missing reasons 和稳定 rows不需要解析 display row 文本。
完成内容:
- `wasm-port/runtime/ui/ini-panel/ui-shell.js` 新增
`createIniPanelShellSessionReadinessWorkflowReport()`
- report 返回:
- `apiName`
- `reportVersion`
- `phase`
- `ready`
- `statusLine`
- `sessionReadiness`
- `missing`
- `rows`
- report 支持从 `workflowSummary.sessionReadiness` 或
`readonlyStatusResult.readonlyStatus.sessionReadiness` 抽取 ready/blocked 状态;
- `createIniPanelShellViewModel()` 暴露:
- `shellSessionReadinessWorkflowReport`
- `createShellSessionReadinessWorkflowReport`
- `createIniPanelLaunchApiManifest().methods` 新增
`getShellSessionReadinessWorkflowReport`
- `runtime/ui/ini-panel/launch.html` 暴露
`linuxCncIniPanelLaunchApi.getShellSessionReadinessWorkflowReport()`
- `createIniPanelShellWorkflowOverviewContract().methodNames` 新增
`getWorkflowOverviewSessionReadinessReport`
- `runtime/ui/ini-panel/workflow-overview.html` 暴露
`linuxCncIniPanelWorkflowOverviewApi.getWorkflowOverviewSessionReadinessReport()`
- `docs/panel-entry.md` 记录新 helper 与两个 browser API 入口;
- Node 测试覆盖 ui-shell helper、launch manifest、shell integration manifest 和 docs drift
- Browser smoke 覆盖 launch API、workflow overview iframe API、shell integration workflow API
- 未新增控制按钮;
- 未执行 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。
验证已通过:
```bash
git diff --check
wasm-port/tools/verify_vendor_sync.sh
wasm-port/tools/verify_no_standalone_cnc_semantics.sh
SKIP_INTERP_BUILD=1 wasm-port/tests/wasm/node/verify_interp_wasm.sh
SKIP_INTERP_BUILD=1 wasm-port/tests/wasm/node/verify_sim_configs_inventory_wasm.sh
wasm-port/tests/ui/node/verify_ui_node_smokes.sh
SKIP_INI_BUILD=1 SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_ini_panel_browser.sh
wasm-port/tests/host/verify_host_smokes.sh
```
关键输出:
```text
ui_node_smokes=ok
browser_ini_launch_smoke=ok
browser_ini_workflow_overview_smoke=ok
browser_ini_shell_integration_workflow_smoke=ok
vendor sync up to date
standalone CNC semantics guard complete
interp_wasm_node_smoke=ok
sim_configs_wasm_node_inventory_unexpected_fail=0
host_wasm_opfs_browser_smokes=ok
```
下一步工作计划:
继续以实质能力推进为主。下一批可把 session readiness workflow report 纳入 SDK surface 或 release
handoff docs 的 API surface 表,方便外部调用者从 SDK/文档直接发现;仍保持只读,不新增控制按钮,
不解析 G-code不扩大 LinuxCNC 语义边界。