跳到主要内容

低置信度核实 Skill

整理时间:2026-09。浓缩 alert-verify / alert-verify-probe 的判断规则。观点见 低置信度核实;进程与队列见 核实 Worker。

Skill 只产出结构化核实工件。触发、底层调度、回写 API 都在 skill 边界之外。

一、Skill 边界与增量能力​

相对第一轮调查,核实 skill 多出三项增量:

  • 读业务代码
  • 采样原始日志
  • 更宽松的时间窗与工具轮次

双 Agent 分工:

角色负责不负责
核实编排代理审计 → 拆问 → 调度 → 是否升级 → 合成自己扫数据源找题
定向取证代理执行一条已定义断言,返回三态整案根因、再规划、写最终产物

主代理决定查什么;取证代理只负责跑。

二、状态机​

MATERIALIZE
↓
AUDIT
↓
QUESTIONIZE
↓
DISPATCH
↓
COLLECT
↓
UPGRADE? ── 否 ──→ SYNTHESIZE
│
是
↓
INDEPENDENT_RECHECK
↓
SYNTHESIZE
↓
ARTIFACT

每个阶段完成后再进入下一阶段。无人值守宿主把同一会话拆成两轮:前一轮覆盖取材到取证(含条件升级),后一轮只做合成与落盘。

三、审计压缩​

阶段 0 若 case 与审计简报已齐,直接进入审计。第一动作是读压缩简报,而不是整读完整结论或 HTML 轨迹。

简报提供最小审计视图:告警锚点 → 原断言 → 证据 / 派发 → 置信度 / 降级 → 缺失 / 薄弱 / 孤儿断言 → 路由提示。目标不是重新调查,而是回答:原调查中哪些具体断言值得验证?

仅当简报明确标出薄弱、孤儿或工具缺口,且需要定位某次工具调用时,再定点回查原轨迹。路由优先用简报里的提示,不靠模型探索文件系统。

四、疑问分类与拆分​

每条疑问必须满足:一个断言 + 一个对象 + 一个时间窗 + 一个可验证数据需求。阶段 1 产出 {疑问, 所需数据, 路由}。

类型典型信号策略
证据单薄置信度约 0.4–0.6、单层信号、样本不足、窗过窄沿原方向扩窗、补第二层独立证据
工具缺口自认缺数据、handoff 未跟、无原始日志 / 代码、缺服务端视角直接补缺失维度
方向可疑引用的锚点不存在、支撑被标成背景、结论落不到任何子结论、事实与结论冲突进入独立重查候选
兜底降级部分完成、置信度硬降级、派发中断、计划维度没做完从证据快照恢复中断点,只补缺失维度

一路一问。反例:「client 构成 + server QPS + 是否自愈」揉成一问。正例拆成:爆发是否发生、server QPS 是否同步下跌、异常后是否自愈。只有后一问的查询参数依赖前一问结果时,才合并或串行。

五、Probe 契约​

主代理派发时写死疑问、所需数据、路由、站点、对象、时间窗和完整可执行命令。取证代理不负责发现问题。

取证只走最短闭环:一条断言 → 一条主要证据路径 → 一个结论。优先用聚合入口,不手写多段查询。结果已足够判断就立即结束,不为「更多数据」继续堆查询。

固定返回三字段:状态(确认 / 反驳 / 仍未知)、证据(来源 + 可复跑查询 + 关键摘要)、缺失数据(仅仍未知时填写)。收到结果后立刻写入处置底稿。底稿是跨 fork / resume 的事实边界,建议每得到一条就更新,而不是全部结束后才首次落盘。

失败处理:每问只派一次。达到轮次上限、部分结果或执行失败,先回收已有输出——能支撑则确认,能反驳则反驳,无法闭环则标未知。完全没有工具输出,也标未知并写明空产出。不要把原调查轨迹当作新的确认 / 反驳证据。

六、调度​

条件策略
独立疑问 1–2 个主代理串行
独立疑问不少于 3 个同一回合并发,单轮最多 6 路,超过则分批
后问参数依赖前问A → B 串行,不为形式上的并行破坏依赖
单个取证代理只负责一个疑问,约 15 个工具回合,能收束就提前结束

派发说明若实际包含多个独立子问,取证代理只跑主路径,其余写入缺失数据后收束,不自行扩查。

七、升级独立重查​

只允许两种触发:

  • 审计阶段判定为方向可疑
  • 处置结果反驳了原结论的关键支撑证据

证据不足、工具缺口、部分完成,优先补当前疑问,不自动升级。不要因为「可能还有更好根因」主动升级。

升级后:原调查只当线索,原结论只当待验证。从原始告警输入重建(告警原文、规范化输入、站点、对象、时间窗、级别、原始锚点),再选数据源独立调查。新问题仍一路一问,无依赖则同轮派完。独立重查完成后,再与原结论比较。

八、合成与分档​

合成阶段不再调查、不再派取证、不再重新 fork。只读处置底稿,判断关系,写出结构化结论。

关系条件
维持原方向成立,关键证据未被推翻,新证据主要是补强;对象、机制、时间线、分类均无实质变化
修正方向大体成立,但对象 / 机制 / 时间线 / 分类被补全或改变
推翻原方向或根因被独立证据推翻;通常对应独立重查,或关键证据被反驳

分类相同不代表维持。 根因机制被补全或修正,就是修正。

Confidence 分档:

  • 两层独立证据一致 → 约 0.7
  • 单层证据 → 约 0.4–0.6
  • 关键缺口就地封顶
  • 只复述已有数字不能提升置信度
  • 外部来源未完成时,不虚高到 0.8 及以上

特殊判定:

  • 昨比 / 同比:今日绝对量处于基线,对照日异常,ratio 下跌 → 修正为误报,解释对照日,而不是声称今日业务真实下降。今日绝对量也明显低于基线,才继续考虑真实下降。
  • 接入层:空查询不能直接证明服务下线、配置漂移或不可观测。服务名解析失败 → 标未知,不要直接修正。只有解析后的服务在错误、接入、变更三条路上都没有信号时,才进入观测缺口判断。
  • 无故障表述:结论若表达「无实际故障 / 无需响应 / 误触发」,分类应落在误报、业务预期或未知,而不是应用 / 依赖 / 组件 / 基础设施。

结构化结论的关键字段:

字段要求
与原结论关系维持 / 修正 / 推翻
状态完成 / 上下文不足
摘要一句话
结论不超过 200 字:根因 → 影响 → 建议,不写流水账
推理A → B → C,并写明维持,或修正了哪一环,或推翻哪一点
置信度0–1,只由证据推动
证据1–5 条可追溯事实
疑问处置至少 1 条;仍未知必须写明缺什么

终态以通过校验的核实产物为准。人读报告由宿主渲染。

九、硬约束​

对外收束为下面几条。它们保护的是架构正确性,不是提示词风格。

  1. 一路一问;取证代理一问只派一次,不因轮次不足重派同一疑问
  2. 派发时带齐参数,禁止空跑探索;不扫文件系统寻找 skill 或脚本
  3. 取证代理只返回三态与证据,不写最终产物,不决定整案关系
  4. 只有方向可疑或关键证据被反驳,才独立重查
  5. 取证轮不写最终产物;合成轮不再取证
  6. 不用原调查结果替代新证据
  7. 最终产物只在收束阶段生成,并作为唯一事实来源

除此之外,具体工具选择由当前阶段和数据地图决定。

十、数据路由原则​

概况类问题优先走现成聚合入口,不手工拼多段查询。存在组合入口且返回「足够判断」时,收束该疑问,不再堆叠其它概览查询。

站点差异用通路类型表达,不在此罗列内部脚本名:

问题类型首选通路
RPC 客户端爆发 / 超时聚合核对:客户端突发与是否自愈
下游健康 / 重启聚合核对:下游存活与重启
单节点 vs 组件聚合核对:主机集中还是组件整体
接入层 upstream聚合核对:接入到后端解析
业务量昨比同比聚合核对:绝对量基线与对照日
错误形态 / 原始日志日志检索或错误概览
发布与变更变更事件,时间范围覆盖告警前数小时
依赖与影响面依赖图
代码实现仓库定位后阅读

字段不存在时:推荐名 → 数据地图中的一个备选 → 标未知。最多一次备选抽查,不继续试错。


相关阅读:低置信度核实(博客) · 核实 Worker