KEEL · 龙骨 · A CURRICULUM FOR THE AI ERA
12. 完成事件响应协作组 — keel 龙骨
现在把事件诊断做成一个完整的 TeamRun。目标不是展示多个 Agent 互相聊天,而是交付一条能解释、能降级、能停止、能测试的协作运行。
现在把事件诊断做成一个完整的 TeamRun。目标不是展示多个 Agent 互相聊天,而是交付一条能解释、能降级、能停止、能测试的协作运行。
业务目标
用户提交 INC-001,系统需要:
- 读取已经授权的事件摘要和证据;
- 创建指标分析和变更分析两个任务;
- 在依赖允许时并行执行;
- 将每个结果保存为带来源的 Artifact;
- 在必要时交给 Reviewer 检查;
- 生成带证据 ID、限制说明和置信度的报告;
- 如果必需任务失败,返回明确的降级或失败状态;
- 不执行回滚、通知或创建工单等副作用动作,除非另一个安全流程完成审批。
四个里程碑
里程碑 1:单 Agent 基线
- 一个 Worker 直接分析固定事件资料;
- 输出结构化 FindingArtifact;
- 确定性校验证据 ID 和 confidence;
- 记录调用次数和耗时。
里程碑 2:Supervisor + 两个 Worker
- 注册
metrics_analyst和change_analyst; - Coordinator 根据 capability 创建任务;
- 任务结果必须带回原 task ID;
- 未知 capability 在执行前失败;
- 事件中保留 assignment、start、success/failure。
里程碑 3:并行 Gather + Review
- 两个独立任务并行执行;
- Gather 按
task_id关联,不按完成顺序猜测; - Reviewer 使用明确 rubric;
max_review_rounds和总 deadline 生效;- 必需任务失败时返回
degraded或failed,不伪造完整报告。
里程碑 4:安全和评估
- 每个 Agent 有 capability 和数据 scope;
- Agent 间输出被标记为数据,不得改变工具权限;
- 运行有总任务数、并行数、调用数和 handoff 限制;
- 与单 Agent 基线进行质量、延迟、成本对照;
- 可以从事件轨迹定位最早失败任务。
推荐的最终模块
contracts.py Task、AgentSpec、Artifact、Result、Event、Run
registry.py Agent 白名单和 capability 路由
workers.py 确定性 Worker 与测试替身
ollama_agent.py Ollama Structured Outputs 适配器
coordinator.py 分派、并行、汇聚、review 和停止条件
domain.py 事件资料与领域校验
模块可以合并,但这些责任不能消失。
结课验收清单
- 我能解释为什么这个任务需要两个 Agent,而不是一个 Agent 加两个工具;
- 我能画出任务依赖和 Agent 通信拓扑;
- 每个任务都有 owner、capability、输入、输出和 deadline;
- 每个 Artifact 都带 task、producer、evidence 和 version;
- 并行结果按 ID 汇聚,失败策略明确;
- Handoff 不会复制权限或凭据;
- Reviewer 有 rubric、轮数上限和结构化反馈;
- 取消和迟到结果不会把运行改回成功;
- Agent 输出不能绕过 Tool Calling 的审批;
- 我能用基线和消融数据说明协作是否值得;
- 我能从 trace 找到第一个错误,而不是只看到最终答案。
开始实现时,先运行项目中的确定性测试,再把 OllamaSpecialist 接入单个 Worker,最后扩大到并行团队。每增加一个 Agent,都要同时增加一条可验证的责任边界。