0.13.1 API 参考
本页对应 Git 标签 v0.13.1。完整 Rustdoc 位于 docs.rs 0.13.1。
功能开关
引擎
FlowEngineBuilder 还提供 with_store()、with_observer()、with_runtime_build_compatibility() 和 with_max_replay_iterations()。0.13.1 没有续段和子工作流深度构建选项。
外部控制
cancel() 是 force_cancel() 的旧名称。
运行时 Trait
WorkflowInvocation 包含运行 ID、WorkflowSpec、初始 JSON 输入和完整历史。context() 返回确定性辅助视图。StepInvocation 包含运行 ID、步骤 ID、步骤名、输入和历史。
WorkflowContext 查询
0.13.1 的上下文没有信号、第一类子运行、续段或补丁查询。
WorkflowContext 命令
这是该版本完整的运行时命令集合。匹配 RuntimeCommand 时不能写入 1.0 新增变体。
步骤和重试类型
RetryPolicy::none() 只允许一次尝试。RetryPolicy::fixed(max_attempts, delay) 使用固定延迟。continue_workflow_on_failure() 把耗尽结果交给工作流,否则默认形成 RetryExhausted 终态。
StepCommand::new() 构造批次成员,with_retry() 设置策略。0.13.1 没有 RetryBackoff 或指数构造器。
定义、版本和 Hook
快照
WorkflowRunSnapshot 聚合 WorkflowRunStatus、步骤、等待、Hook、取消请求、进度、外部子操作和 WorkflowTerminalOutcome。
主要子投影是 StepSnapshot、WaitSnapshot、HookSnapshot、CancellationRequestSnapshot 和 ScheduledWakeup。这些是当前历史的只读结果。
存储
FlowEventStore 公开追加、预期序号追加、完整列表、运行枚举、活动 Hook 和到期唤醒契约。
内置后端包括 InMemoryEventStore、LocalFileEventStore、可选 SqliteEventStore 和 PostgresEventStore。SQL 功能同时公开 FlowHistoryRetentionPolicy、FlowHistoryHold、FlowHistoryRetentionReport 与 FlowHistoryTombstone。
0.13.1 的 SQL 构造器在连接时迁移,没有独立迁移和只验证入口。
调度、任务与 Worker
观察
FlowEventObserver 在事件提交后接收 FlowEventEnvelope。FanoutFlowEventObserver 组合多个观察者,InMemoryFlowEventObserver 适合测试,LocalFileA3sFlowEventSink 写本地审计日志。
A3sFlowEventBridge 把完整包络映射到 A3sFlowEvent。观察层不参与重放权威。
原生 TypeScript
NativeTsRuntime 支持 with_output_limits()、with_compile_timeout()、with_invocation_timeout()、with_dependency_mode() 和 preflight()。
关键错误
并发事件竞争返回 EventConflict,运行定义冲突返回 RunConflict,重放漂移返回 NonDeterministic,Hook 重投漂移返回 HookConflict。版本准入与路由分别返回 RuntimeBuildUnavailable 和 RuntimeBuildRouteNotFound。
这些错误不能统一无限重试。身份和重放冲突需要修复调用参数或运行时代码,版本错误需要修复 Worker 路由。
