CMDCGateway.WorkflowEventAdapter (cmdc_gateway v0.6.0)

Copy Markdown View Source

Workflow / AgentOps 事件适配器。

本模块只依赖 cmdc_orchestrator RunEvent 的数据形状,不依赖 CMDCOrchestrator.* 模块。宿主应用可以传入 struct、plain map 或 tuple, Gateway 只负责翻译、裁剪和稳定对外事件名。

Summary

Functions

投影为 AgentOps Gateway 事件。

翻译为 EventTranslator 可直接输出的三元组。

Types

event_input()

@type event_input() :: map() | struct() | tuple()

gateway_event()

@type gateway_event() :: %{
  event: String.t(),
  run_id: String.t(),
  node_id: String.t() | nil,
  trace_id: String.t(),
  span_id: String.t(),
  parent_id: String.t() | nil,
  timestamp: String.t(),
  payload: map()
}

Functions

to_gateway_event(event, opts \\ [])

@spec to_gateway_event(
  event_input(),
  keyword()
) :: {:ok, gateway_event()} | :skip

投影为 AgentOps Gateway 事件。

输出使用 cmdc_orchestrator AgentOps guide 约定的 snake_case 字段: event/run_id/node_id/trace_id/span_id/timestamp/payload

translate(event, opts \\ [])

@spec translate(
  event_input(),
  keyword()
) :: {:ok, String.t(), gateway_event()} | :skip

翻译为 EventTranslator 可直接输出的三元组。