Approval Workflow

Approval Workflow 是管理高风险操作审批流程的机制,包括审批请求发起、审批人通知、审批决策和审批后执行。

#type / concept #status / evergreen #tech / ai #tech / architecture

[!info] related notes

Approval Workflow

一句话定义

Approval Workflow 是管理高风险操作审批流程的机制。Agent 请求执行删除操作 → 发起审批 → 通知审批人 → 审批人批准 → 执行操作。

核心原理

审批流程

Agent 请求执行高风险操作


创建审批请求

    ├─→ 通知审批人(Webhook、邮件、即时通讯)


等待审批

    ├─ 批准 → 执行操作
    ├─ 拒绝 → 通知 Agent 操作被拒绝
    └─ 超时 → 自动拒绝

Python 实现

class ApprovalWorkflow:
    async def request_approval(self, tool_call, context) -> ApprovalResult:
        # 创建审批请求
        request = ApprovalRequest(
            id=generate_id(),
            tool_call=tool_call,
            requester=context.user_id,
            created_at=datetime.now(),
            expires_at=datetime.now() + timedelta(minutes=5),
        )
        await self.store.save(request)

        # 通知审批人
        await self.notify_approvers(request)

        # 等待审批(带超时)
        try:
            result = await asyncio.wait_for(
                self.wait_for_decision(request.id),
                timeout=300,  # 5 分钟超时
            )
            return result
        except asyncio.TimeoutError:
            return ApprovalResult(decision="rejected", reason="timeout")

常见坑

  1. 不做超时: 审批人不响应,Agent 永远等待
  2. 审批信息不足: 审批人看不到完整操作内容
  3. 不做审批记录: 无法审计谁批准了什么

参考资料

创建于 2026/6/30 更新于 2026/7/15