WorkflowError

workflow.WorkflowError 是业务 workflow 和 runtime 使用的标准错误类。它会保留错误类型、节点名、metadata 和经过清洗的 cause,最终进入执行报告。

签名

new workflow.WorkflowError(options: WorkflowErrorOptions)

参数

参数类型说明
optionsWorkflowErrorOptions标准错误配置,包含错误类型、消息、节点名、cause 和 metadata。

WorkflowErrorOptions

字段说明
type错误分类。必填。
message对用户和报告可见的错误信息。必填。
nodeName关联节点名。节点执行失败时 runtime 会补充。
cause原始错误。序列化时只保留安全字段。
metadata可调试的结构化信息。

WorkflowErrorType

类型常见来源说明
input_validation参数解析、输入节点、文件节点输入无效或配置缺失。
execution_abortedabort signal、timeout、执行限制执行被中断。
node_execution普通节点执行失败普通节点抛出的未知错误。
provider_callLLM provider 解析或调用provider 缺失、绑定错误或调用失败。
workflow_executionworkflow run 失败workflow 主流程失败。
stream_interrupted流式节点或 provider stream流式输出中断或失败。

实例字段

字段类型说明
name"WorkflowError"Error 名称。
messagestring错误消息。
typeWorkflowErrorType错误分类。
nodeNamestring | undefined关联节点。
metadataobject | undefined附加调试信息。
safeCauseWorkflowErrorCause | undefined清洗后的 cause。

序列化结构

字段类型说明
typeWorkflowErrorType错误分类。
messagestring错误信息。
nodeNamestring | undefined关联节点。
metadataobject | undefined附加信息。
causeWorkflowErrorCause | undefined只保留安全 cause 字段。

错误码映射

运行报告会把失败类型映射成 payload errCode
错误类型errCode
input_validation400
execution_aborted499
stream_interrupted499
provider_call502
node_execution500
workflow_execution500

示例

throw new workflow.WorkflowError({
  type: "input_validation",
  message: "message is required.",
  nodeName: "parse-input",
  metadata: {
    field: "message",
  },
});

何时使用

场景建议
用户输入不合法input_validation
外部服务调用失败provider_call 或让 provider 层包装。
想让报告保留结构化上下文使用 metadata
普通未知异常可以直接抛,runtime 会包装为 WorkflowError