智慧設備順序控制系統共用骨架|文件首頁

這裡是專案總覽入口,先回答「目前完成了什麼、哪些還沒做、我的需求是否已被納入」,再連到細節文件。

正式網站:https://hs-device-control-template-docs.pages.dev/
現在看這裡

專案邊界總覽

第一階段已完成控制核心;第二階段 A 已完成 MySQL TaskStore 與 Schema Automation PoC;第二階段 B 已完成 DB LogWriter / TraceStore 第一版、manual-only xUnit 驗證入口、真實 DB 驗證前確認清單、TaskTraceStore 查詢邊界設計、Apply 安全策略與測試 DB DDL 與真實 DB 驗證通過紀錄;API、ServiceHost、外部 DLL 與多設備單元屬於後續正式平台。

第一階段100%

控制核心、ConsoleHost、Adapter、Log、Config 與驗證節點已完成。

第二階段整體100%

第二階段 A / B 已完成;DB LogWriter / TraceStore、測試 DB DDL、task_log_traces 寫入 / 查詢 / cleanup、TaskTraceStore 查詢邊界與 Schema Apply 安全策略已收斂。

長期完整平台75%

包含資料庫、WebApi、ServiceHost、WinForms、真實硬體與部署成熟度。

第三階段主線目前狀態目前邊界下一個可執行項目
3A Trace 查詢能力已完成已新增 ITaskTraceStore、Core 查詢 DTO、MySqlTaskTraceStore fake gateway 查詢、HasMore 分頁、遮罩與錯誤測試,並完成測試 DB write/read/cleanup 補驗:寫入 2 筆、查回 2 筆、cleanup 刪除 2 筆。3A 已收斂,作為 3B 前置基礎。
3B DB 初始化安全流程完成稽核已完成程式 commit 13c14ca 已新增 ManualApplyPreview model、builder、PlanHash、CanApply=False、風險分級、ConsoleHost 顯示與完成稽核;仍未執行 DDL 或正式 Apply。真實 DB read-only preview 驗證、3C 邊界分析或 commit / push 前確認。
3C Service / API 入口尚未開始尚未導入 WebApi / ServiceHost,不改啟動方式。先做 ServiceHost / WebApi 邊界分析。
3D Plugin / 多設備單元尚未開始已有 Adapter 抽象與 DeviceId 基礎,尚未載入外部 DLL 或建立資源鎖。整理平台化擴充需求與風險。
狀態同步

最新程式狀態與進度快照

程式狀態由程式 repo push 後同步;進度快照在完成可驗收節點後整理。

最新程式狀態

目前階段
第三階段 3B ManualApplyPreview 第一版安全預覽與完成稽核已完成,程式 repo 本機 commit 13c14ca。
最新更新
2026-06-04
程式 repo
hs-device-control-template
最新版本
13c14ca 分支:poc/nmodbus-tcp
Commit 訊息
新增 ManualApplyPreview 安全預覽
下一步
選擇真實 DB read-only preview 驗證、3C Service / API 邊界分析,或 commit / push 前確認。

正在讀取程式 repo 狀態資料...

第二階段分項進度

第二階段規劃與主軸選型
100%
MySQL schema / 自動建表設計
100%
真實 MySQL Inspector / metadata 讀取
100%
TaskStore 第一版 PoC 與真實 DB 驗證
100%
TaskStore 多表擴充與 node_executions
100%
DB LogWriter / TraceStore 第一版與真實 DB 驗證
100%
Schema Apply 安全策略與停止線
100%

第二階段 A 已完成 MySQL TaskStore PoC 與 Schema 自動化;第二階段 B 已完成 DB LogWriter / TraceStore 第一版、manual-only xUnit 入口、測試 DB DDL 建表、task_log_traces 寫入 / 查詢 / cleanup 驗證與收斂稽核;public 查詢介面、正式 DDL Executor 與 Host DB 初始化移到後續階段。

需求地圖

我的需求是否已被納入?

用「已符合 / 部分符合 / 尚未符合」標示目前狀態,避免把後續平台能力誤看成已完成。

看完整需求地圖
需求目前狀態現在已具備尚未完成 / 所屬階段
程式邏輯、設備動作可由 JSON 或工具編程,不影響核心部分符合已有 JSON 設定、Config Loader / Mapper / Validator、Workflow 與 Adapter 抽象。圖形化工具、設定版本控管、熱更新與回滾屬後續平台。
使用 API 呼叫,由 Server 控制設備狀態並查詢設備狀態尚未符合已有 Workflow / Adapter / Task / Log 基礎,第二階段已補上 TaskStore 與 node_executions 持久化驗證。WebApi、API contract、認證授權與設備狀態 API 屬第三階段。
控制端透過 Service 掌握順序控制或控制裝置尚未符合ConsoleHost 已可驗證核心流程。ServiceHost、背景常駐、任務佇列、重啟恢復屬第三階段。
裝置可動態載入外部 DLL,例如馬達、面板或其他設備模組尚未符合已有 IDeviceAdapter 抽象作為擴充基礎。Plugin Loader、DLL 掃描、版本控管與載入安全屬第三階段。
一台控制主機管理多個設備單元部分符合已有 DeviceId、Adapter Dispatcher、Workflow 綁定設備與 DeviceId Log。ControlUnitId / StationId、Resource Lock、Command Queue、急停與狀態隔離屬第三階段。
階段邊界

第一階段 / 第二階段完成與未完成

這裡只列邊界,不取代細節文件;需要完整歷程時進入開發進度總覽或 docs 索引。

第一階段已完成

控制核心與驗證入口

  • Core / Workflow / StateMachine / TaskEngine 骨架完成。
  • Config Loader / Mapper / Validator 與 ConsoleHost 設定啟動完成。
  • Mock Adapter、Adapter Data、Workflow 條件轉移與 Log 承接完成。
  • Modbus TCP Adapter 第一版、錯誤輸出、節點歷程與人工驗證紀錄完成。
  • 第一階段驗收進度正式標記 100%。
第一階段未完成 / 不納入

移出第一階段邊界

  • MySQL 任務持久化、正式資料庫建表與查詢不屬於第一階段。
  • WebApi、ServiceHost、WinForms Debug Tool 不屬於第一階段交付。
  • 真實案場硬體連線驗收、長時間穩定性與部署維運列入後續階段。
  • .NET 版本升級屬正式化前評估。
第二階段 A 已完成

資料庫與 Schema 自動化 PoC

  • 第二階段規劃總覽與第一個主軸選型完成。
  • MySQL 5.6.2、行前連線資訊、套件選型與 Schema 自動建表設計已整理。
  • Schema Attribute、SQL Generator、ALTER TABLE Dry Run、Schema Inspector 抽象與 mock 已完成。
  • ConsoleHost Dry Run 顯示、Schema Initializer DryRun 與人工驗證已完成。
  • MySQL Schema Inspector 已完成真實 metadata 讀取、manual-only 基本驗證、成功輸出補強與 detailed logger 證據回填。
  • MySQL TaskStore 已完成 task_executions 與 node_executions 真實 DB manual-only 驗證。
  • DB LogWriter / TraceStore 第一版、manual-only xUnit 入口與真實 DB 驗證前確認清單已完成,確認詳細診斷資料可由 LogEntry 映射到 task_log_traces,且不直接塞入 MySqlTaskStore.Save。
第二階段 B 完成

DB Log、Trace 與 Apply 安全收斂

  • DB LogWriter / TraceStore 已完成邊界設計、實作前確認、第一版程式實作、manual-only xUnit 驗證入口與真實 DB 驗證前確認清單。
  • task_log_traces schema class、LogEntry mapper、payload sanitizer、fake gateway 測試、fallback、HS_MYSQL_LOGWRITER_* gate、查詢 / cleanup helper、測試 DB DDL 建表與真實 DB 寫入 / 查詢 / cleanup 驗證已完成。
  • TaskTraceStore 查詢邊界設計已完成,public 查詢 contract 改列第三階段前置。
  • 正式 Apply 模式、DDL executor、備份與 rollback 策略改列後續專題。
  • WebApi、ServiceHost、WinForms Debug Tool、Plugin DLL 與多設備單元控制移到第三階段。
只留主要入口

下一步看哪裡?

首頁保留五個主要入口,其餘細節收進下方「其他文件」。

需求總覽

平台化需求地圖

查看使用者需求是否已納入,以及已符合、部分符合、尚未符合。

開啟
進度總覽

開發進度總覽

查看百分比、完成時間、測試數、commit 與長期平台進度。

開啟
第二階段

第二階段儀表板

查看第二階段 A / B 已完成內容與後續階段保留項。

開啟
第三階段

第三階段執行儀表板

查看 3A Trace 查詢、3B DB 初始化、3C Service / API、3D Plugin / 多設備單元的狀態與下一步。

開啟
第三階段 3B

ManualApplyPreview 實作前確認

確認 DB 初始化安全 preview 的資料模型、風險分類、輸出格式與停止線。

開啟
第三階段 3B

3B 決策確認表

逐項確認 ManualApplyPreview 進程式實作前的七項決策。

開啟
第三階段 3B

ManualApplyPreview 實作紀錄

查看第一版安全預覽、測試結果與後續停止線。

開啟
第三階段 3B

3B 完成稽核表

確認 ManualApplyPreview 第一版是否可驗收完成,以及後續仍需確認的項目。

開啟
完整索引

docs 文件索引

查找所有規劃、驗證紀錄、實作前確認與開發日誌。

開啟
其他基礎文件