 qiaoqichaoandClaude Code
|
b5feee6982
|
feat(v2): T07-a 预审结果约束与结论校验
T07 是"预审执行"大卡,按纪律拆子卡。本批为第一块:纯确定性的结论校验,
不调用任何模型、不计算概率。覆盖 AC-05/06/07/09/12/45 与 BR-05/06/07/12。
新增 services/prescreen_policy.py:
- decide():四级优先(hard_block → critical_incomplete → open_findings → clean),
优先级顺序即业务口径,改动等于改结论,已显式标注
- **硬性阻断不可覆盖**:命中 hard 规则即 stop,并指出规则版本、保留模型原始
结构化提案供审计;专项模型的正面单题判断不能翻盘(有专门反例)
- **未知不等于风险也不等于通过**:关键核查不可完成给 insufficient_information
并列出未完成项,findings 的 result 原样保留、**不得被改写成 issue**
- **没有 second path 给概率**:probability() 不接受任何入参,模型分数无法顺手传入;
native_metrics 里名为 probability 的指标会被 assert_no_probability_leak 拦下,
self_reported 置信度可入档但不得变概率
- stop 明确不触碰正式审批(AC-45),预算耗尽按 E-08 列未完成项而非伪造完成
实现中修正了两处自己的测试写法:断言"不含高风险三字"会被免责说明本身命中;
断言 open_findings 为空与"unknown 属待处理"的定义矛盾。两处都改成检验真正的
不变量(结论非风险判定 + findings 不被改写)。
测试:新增 test_prescreen_policy.py 19 项。全量 368 项 OK(349 → 368);
verify.py 10/10 PASS。
Co-Authored-By: Claude Code <noreply@anthropic.com>
|
2026-09-29 20:28:45 +08:00 |
|