feat: add chat verifier agent

This commit is contained in:
zhuyongxin
2026-07-03 10:54:33 +08:00
parent 4f5316d473
commit 9050487307
28 changed files with 3200 additions and 209 deletions
@@ -0,0 +1,31 @@
# Proposal: chat-verifier-agent
## Why
Chat 多 Agent 链路缺少出口质量门禁。Executor 输出答案后会直接返回给用户,无法在返回前拦截缺证据、低置信或明显编造的结论。
## What Changes
- 新增无工具 Verifier Agent,在 Executor 输出后读取答案和工具调用证据摘要,产出 `PASS` / `LOW_CONFID` / `REJECT` 判决。
- `ChatService` 显式编排 `Planner -> Executor -> Verifier`,并根据 Verifier 判决控制最终输出或最多一次补充轮次。
- Verifier 输入使用显式状态块:`original_query`、`executor_final_answer`、`tool_trace_summary`、第二轮可选 `retry_context`。
- `diagnosis_session.self_evaluation` 作为 JSON 容器保存 `rule_evaluation` 与 `verifier_evaluation`,避免异步评分覆盖 Verifier 结果。
- Verifier 结果增加可追溯证据引用:`tool_trace_summary[*].trace_ref`、`source_invocation_ids` 与 `facts_checked[*].evidence_refs`。
- `LOW_CONFID` 和 `REJECT` 用户侧输出使用固定协议,`REJECT` 不透传未经验证的原始答案。
## Capabilities
### New Capabilities
- `chat-verifier-agent`: Chat 多 Agent 出口事实核查、判决路由、观测存储和证据可追溯能力。
### Modified Capabilities
- None.
## Impact
- Affected code: `ChatService`, chat verifier prompt, verifier input assembly, self-evaluation persistence, multi-agent runtime orchestration.
- Affected runtime behavior: complex chat path now runs a Verifier gate after Executor and may perform one bounded retry for low-confidence evidence gaps.
- No database schema change is required; `self_evaluation` remains the persistence container.
- Non-goals: Verifier 不调用工具、不改写 Executor 答案、不影响单 Agent 链路、不支持超过两轮的补充编排。