ConsoleHost Schema Dry Run 顯示人工驗證紀錄

ConsoleHost Schema Dry Run 顯示人工驗證紀錄

驗證節點名稱

ConsoleHost Schema Dry Run 顯示人工驗證

驗證目的

確認 SchemaDryRunPlanner 接到 ConsoleHost 顯示層後,實際輸出是否能讓使用者清楚判斷:

驗證時間

2026-05-30

驗證對象

驗證方式

執行:

dotnet run --project src\HS.DeviceControl.ConsoleHost

驗證時仍使用 samples/config 與 mock schema snapshot。

本次驗證沒有:

實際輸出摘要

ConsoleHost 前段仍正常完成第一階段代表流程:

Workflow completed.
Task node history:
- NodeId=light-on NodeName=開啟燈號 DeviceId=LED_001 CommandName=LightOn Status=completed
- NodeId=sensor-verify NodeName=Sensor 驗證 DeviceId=SENSOR_001 CommandName=SensorVerify Status=completed
Recent tasks:
- TaskId=demo-task WorkflowId=LIGHT_SENSOR_DEMO Status=Completed NodeCount=2

新增的 Schema Dry Run 區塊可正常顯示:

Schema dry run:
Mode=DryRun Success=True TablesToCreate=1 ColumnsToAdd=0 IndexesToAdd=0 ManualReview=0
SQL preview:
- CREATE TABLE IF NOT EXISTS `task_executions` (
  `task_id` varchar(64) NOT NULL COMMENT 'task id',
  `workflow_id` varchar(64) NOT NULL COMMENT 'workflow id',
  `status` varchar(32) NOT NULL COMMENT 'status',
  PRIMARY KEY (`task_id`),
  INDEX `idx_task_executions_status` (`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='task execution';
Warnings:
- Dry Run 不會連線或修改 MySQL。

驗證結果

項目結果
Workflow 原有輸出符合預期,仍可完成 LIGHT_SENSOR_DEMO
Task node history符合預期,可看到節點、設備、命令與狀態
Recent tasks符合預期,可看到任務摘要
Schema Dry Run 標題符合預期,清楚顯示 Schema dry run:
Dry Run 模式符合預期,顯示 Mode=DryRun
建表數量符合預期,顯示 TablesToCreate=1
欄位 / 索引補齊數量符合預期,空 snapshot 下由 CREATE TABLE 一次呈現
人工審查項目符合預期,顯示 ManualReview=0
SQL preview符合預期,可看到 CREATE TABLE IF NOT EXISTS task_executions
安全警告符合預期,明確提示 Dry Run 不會連線或修改 MySQL

是否符合預期

符合預期。

此節點已達到「讓使用者在 ConsoleHost 看見 Schema Dry Run 實際效果」的目的。

發現問題或限制

判斷

此驗證節點可以標記完成。

下一步可進入 Schema Initializer DryRun 流程設計,先定義初始化協調層如何呼叫 inspector、planner 與未來 executor,並繼續保持 DryRun / Apply 分離。

返回文件首頁