1.3 KiB
1.3 KiB
ADR-012:逐条结果状态与仲裁结论分离
状态
已接受
决策
TestResult.execution_status只取completed或error,表示模型与裁判调用是否正常完成。TestResult.verdict可为空;自动仲裁时取pass、fail、needs_human_review或judge_format_error,未仲裁和执行错误时为空。- Run 使用
completed_count与error_count统计执行进度;verdict=fail不是执行错误。 (run_id, execution_id)使用数据库唯一约束,禁止同一运行的同一执行实例出现多条当前状态。- 报告和按交互模式统计分别展示执行状态与仲裁结论,不再使用一个
status字段混合两个维度。
迁移
- 历史
status=error映射为execution_status=error, verdict=NULL。 - 历史
status=completed映射为execution_status=completed, verdict=NULL。 - 历史
pass、fail、needs_human_review、judge_format_error映射为execution_status=completed与同名verdict。 - 历史 Run 的
failed_count原样迁移为语义明确的error_count。
边界
本模型保存每个执行实例的当前结果,不保存状态变更历史;需要逐次重跑审计时再增加独立 attempt 表,当前不为未提出的历史查询引入该结构。