Human workflow
Incident 與受控動作
Event 是機器觀察;Incident 是人的處理工作。實體世界動作使用獨立註冊的設備、有限的語意操作、期限與人工核准。
Incident 生命週期
open → claimed → closed
↑ ↓ │
└── released └── reopenGET /v1/incidents
GET /v1/incidents/{incident_id}
POST /v1/incidents/{incident_id}/claim
POST /v1/incidents/{incident_id}/release
POST /v1/incidents/{incident_id}/close
POST /v1/incidents/{incident_id}/reopen
POST /v1/incidents/{incident_id}/notes
PUT /v1/incidents/{incident_id}/tags分析事件 cleared 不會自動把 Incident 結案。下游系統應使用 Incident 狀態作為人的工作流程真相,並保留 Event 生命週期作為分析證據。
動作安全邊界
- 模型只能建議已註冊的語意操作,不能提供 URL、shell、PLC 位址或程式碼。
- 每個動作都需要 Idempotency-Key、有限期限/持續時間與權限。
- 需要人工確認的動作在確認前不會執行。
- 推理、Webhook 與第三方動作不會阻塞取流與推理主迴圈。
動作 API 只有在 /v1/openapi.json 中正式列出時才是公開可用契約。部署前請以目前 OpenAPI 為準,不要從舊 /api/sdk 路徑推測 /v1 URL。