74 lines
1.8 KiB
Markdown
74 lines
1.8 KiB
Markdown
# Diagnosis Eval Baseline Diff
|
||
|
||
**状态**:已归档
|
||
**严重程度**:中
|
||
**发现时间**:2026-07-05
|
||
**来源**:P1-B follow-up
|
||
**依赖**:`diagnosis-eval-harness`, `expand-diagnosis-eval-fixtures`
|
||
|
||
---
|
||
|
||
## 背景
|
||
|
||
现在项目已经有固定诊断 case、完整 fixture 和 baseline report。下一步需要把 baseline 真正用起来:每次改 Agent 后,把新的 report 和 baseline report 做对比。
|
||
|
||
---
|
||
|
||
## 问题
|
||
|
||
当前 baseline 只能告诉我们“标准状态是什么”,但还不能自动告诉我们“这次改动有没有变差”。
|
||
|
||
典型问题包括:
|
||
|
||
- pass rate 是否下降。
|
||
- 某个 case 是否从通过变失败。
|
||
- 某个 evidence tool 是否从覆盖变成缺失。
|
||
- verifier verdict 分布是否异常变化。
|
||
- 平均工具调用数和耗时是否明显上升。
|
||
|
||
---
|
||
|
||
## 目标
|
||
|
||
新增一个 deterministic baseline diff 能力,用代码比较两份 `DiagnosisEvalReport`。
|
||
|
||
完成后应该做到:
|
||
|
||
- 输入 baseline report 和 current report。
|
||
- 输出结构化 diff。
|
||
- 标出 regression、improvement 和普通 changed。
|
||
- 支持 JSON 和 Markdown 输出。
|
||
- 文档说明面试时怎么解释这套回归判断。
|
||
|
||
---
|
||
|
||
## 范围
|
||
|
||
### In scope
|
||
|
||
- report-level diff 数据结构。
|
||
- aggregate 指标比较。
|
||
- case-level 指标比较。
|
||
- JSON / Markdown diff writer。
|
||
- focused tests 和 eval 文档。
|
||
|
||
### Out of scope
|
||
|
||
- 不运行真实 Agent。
|
||
- 不生成新 trace。
|
||
- 不引入 LLM-as-judge。
|
||
- 不改现有 evaluator 评分规则。
|
||
|
||
---
|
||
|
||
## 面试表达
|
||
|
||
可以这样讲:
|
||
|
||
```text
|
||
我不是只保存了一份 baseline,而是加了 baseline diff。
|
||
每次改 prompt、tool、retrieval 或 verifier 后,
|
||
我都能把新 report 和 baseline 比较,
|
||
直接看到哪些 case 退化、哪些证据缺失、成本有没有上升。
|
||
```
|