返回 Papers
AI 底层逻辑 / 经典论文

Durable Execution / Agent Workflow:状态机、Saga 与可恢复 Agent

一句话:

304ai-foundations/papers/42-durable-execution-agent-workflow-state-machines.md

Durable Execution / Agent Workflow State Machines 解读

面向对象: AI Architect / Product Architect / Workflow Architect / Risk Ops / Platform PM。 核心问题: 为什么企业 Agent 不能只靠 while-loop 和 prompt 运行?持久化工作流、状态机、Saga、重试、补偿和 replay 如何让 AI 行动系统可恢复、可审计、可控制? 学习目标: 理解 durable execution、workflow replay、state machine、event sourcing、Saga compensation、idempotency 和 HITL 状态,并映射到支付争议、AML 调查、KYC onboarding、信贷 memo 和客户投诉处理。


Source Anchors

SourceLink用途
Temporal docshttps://docs.temporal.io/理解 durable execution、workflow、activity、retry 和 replay
Temporal Durable Execution guidehttps://temporal.io/blog/what-is-durable-execution理解长时间、可恢复执行的产品直觉
AWS Step Functions docshttps://docs.aws.amazon.com/step-functions/latest/dg/welcome.html理解 state machine、task、choice、retry、parallel 和 workflow orchestration
Workflow Patternshttps://www.workflowpatterns.com/理解业务流程控制流模式
Sagas paperhttps://www.cs.cornell.edu/andru/cs711/2002fa/reading/sagas.pdf理解长事务和补偿事务思想
NIST AI RMFhttps://www.nist.gov/itl/ai-risk-management-framework把 Agent workflow 风险纳入治理和监控

一句话:

企业 Agent 不是一次模型调用,而是带状态、工具、副作用、人工审批、失败恢复和审计证据的长运行工作流。


1. Agent 为什么需要 Durable Workflow

很多 demo 写成:

while not done:
  ask model what to do
  call tool
  append observation

这在生产中会遇到:

  • 进程崩溃后不知道执行到哪一步。
  • 工具调用成功但模型没记录结果。
  • 重试导致重复扣款、重复发邮件、重复开 case。
  • 人工审批等几小时后上下文丢失。
  • 模型升级后 replay 结果不一致。
  • 审计问“为什么这么做”时 trace 不完整。
  • 高风险动作没有明确状态和责任人。

Durable workflow 要解决:

long-running goal
  -> explicit state
  -> persisted events
  -> deterministic transitions
  -> controlled side effects
  -> retries and compensation
  -> human approval
  -> audit and replay

2. State Machine 是产品契约

状态机不是工程细节,而是产品责任边界:

Draft
  -> EvidenceGathering
  -> AIProposedAction
  -> HumanReview
  -> Approved
  -> ToolExecution
  -> Completed
  -> Failed / Compensated / Escalated

每个状态要定义:

  • 谁拥有责任。
  • 允许哪些工具。
  • 需要哪些证据。
  • 哪些条件进入下一状态。
  • 哪些失败可重试。
  • 哪些失败必须人工处理。
  • 哪些动作需要补偿。
  • 记录哪些审计字段。

高风险 Agent 的关键不是“它能不能规划”,而是“它是否只能在批准状态内行动”。


3. Durable Execution 核心机制

3.1 Workflow vs Activity

概念作用Agent 映射
Workflow持久化业务流程和状态转换Agent case lifecycle
Activity可重试的外部动作查询 CRM、读取文档、调用支付工具
Signal外部事件注入人工审批、客户补件、监管请求
Timer时间等待SLA、冷却期、超时升级
Retry policy失败重试临时 API 错误
Replay从事件历史恢复状态审计和事故复盘

3.2 Determinism

工作流 replay 要尽量确定。AI 调用天然不确定,因此:

  • LLM 调用结果应作为 event/activity result 记录。
  • 不应在 replay 中重新调用模型得到不同计划。
  • 模型版本、prompt 版本、retrieved context、tool result 都要记录。
  • 决策状态机应由记录事件驱动,而不是重新“想一遍”。

3.3 Idempotency

工具调用必须防重复:

idempotency_key = workflow_id + step_id + business_action_id

尤其是:

  • 支付调整。
  • CRM 写入。
  • 发客户通知。
  • 创建 case。
  • 冻结/解冻。
  • 发送补件请求。

4. Saga 与补偿

长事务不适合一直锁住资源。Saga 的思想:

step 1 succeeds
step 2 succeeds
step 3 fails
  -> run compensation for step 2
  -> run compensation for step 1

Agent workflow 中常见补偿:

动作补偿
创建 case关闭或标记作废
发送错误邮件发送更正通知并开投诉跟踪
更新低风险字段恢复旧值并记录 override
临时贷记反向调整或人工财务处理
错误任务分派重新分派并通知

并非所有动作都可补偿:

  • 客户已经看到的信息无法“撤回”。
  • 监管报告不可随意删除。
  • 账户冻结造成的客户影响需要正式处理。
  • 拒贷/投诉相关动作需要合规流程。

所以高风险动作更应该前置人工审批。


5. 金融零售案例

5.1 支付争议 Agent

状态:

Intake
  -> EligibilityCheck
  -> EvidenceRequest
  -> NetworkRuleReview
  -> ProvisionalCreditDecision
  -> HumanApproval
  -> CustomerNotice
  -> CaseClosed

控制:

  • AI 可读取交易和规则,草拟建议。
  • 临时贷记需要规则服务和人工审批。
  • 客户通知必须引用批准模板。
  • 每个 tool call 记录 idempotency key。

5.2 AML Investigation Copilot

状态:

AlertOpened
  -> EntityResolution
  -> EvidenceCollection
  -> NarrativeDraft
  -> AnalystReview
  -> QAReview
  -> FilingDecision

控制:

  • AI 不做最终可疑活动结论。
  • SAR/STR 决策状态由授权人员推进。
  • 所有证据路径和模型版本进入 case record。

5.3 KYC Onboarding

状态:

ApplicationSubmitted
  -> DocumentIntake
  -> Extraction
  -> PolicyCheck
  -> ExceptionReview
  -> Approval / Rejection / RequestMoreInfo

控制:

  • OCR/LLM 负责抽取和缺失检查。
  • 文档充分性由 rules/DMN + 人工例外处理。
  • 任何拒绝必须有原因和申诉路径。

6. Agent Workflow Architecture

User / Event
  -> workflow engine
  -> state store / event history
  -> agent planner activity
  -> policy engine
  -> tool gateway
  -> human task queue
  -> audit log
  -> monitoring and replay

关键组件:

组件责任
Workflow engine管理状态、重试、计时器、信号和 replay
Agent planner在允许状态内生成建议或下一步
Policy engine判断工具、数据、动作是否允许
Tool gateway执行外部副作用并做幂等
Human task queue审批、复核、例外处理
Event log保存状态转换、模型输出、工具结果
Evidence store保存引用、文件、审批、原因
MonitorSLA、失败、重试、补偿、人工积压

7. Release Gate

高风险 Agent workflow 上线前必须验证:

Gate检查
State completeness所有正常、失败、超时、取消、补偿状态都有定义
Tool side effect每个工具动作有幂等键、权限和审计
HITL boundary高风险动作不能绕过人工状态
Replay事故复盘能重建当时状态
Model versioning模型/prompt/retrieval/tool 版本进入事件历史
Retry safety重试不会造成重复副作用
Compensation可补偿动作有补偿方案,不可补偿动作有前置 gate
MonitoringSLA、DLQ、失败率、人工积压、policy violation 可监控

8. 面试表达

30 秒版本

企业 Agent 不能只是循环调用模型和工具。只要它涉及长流程、外部系统和客户影响,就需要 durable workflow、状态机、幂等、重试、补偿、人工审批和 audit replay。模型可以提出下一步,但状态机和 policy engine 决定能否行动,workflow engine 确保崩溃后可恢复、失败后可补偿、审计时可复盘。

2 分钟版本

我会把 Agent 设计成工作流系统。每个 case 有显式状态,例如 evidence gathering、AI proposed action、human review、approved、tool execution、completed。LLM 调用作为 activity,结果写入事件历史,不在 replay 时重新生成。所有外部工具调用要有 idempotency key 和 side-effect classification。对于长事务,用 Saga 思路设计补偿,但客户通知、拒贷、监管报告这类不可逆动作必须前置人工审批。上线门禁要覆盖状态完整性、重试安全、HITL、policy gate、audit evidence 和 incident replay。

架构师版本

Durable Agent architecture 是 workflow engine、event history、agent activity、policy engine、tool gateway、human task queue、evidence store 和 observability 的组合。它把 Agent 从“会行动的聊天框”变成可恢复、可审计、可治理的企业流程组件。


9. 作品集任务

设计一个支付争议 Agent 状态机:

  1. 定义 12 个状态和允许转移。
  2. 为每个状态列出 owner、input、output、tool、policy gate。
  3. 设计 8 个工具的 side-effect matrix。
  4. 给所有写操作设计 idempotency key。
  5. 设计 5 个补偿流程。
  6. 写 HITL approval map。
  7. 做一页 incident replay: 工具超时、重复执行、模型输出错误、人工拒绝时如何恢复。