feat(harness): complete protocol repair stop and archive ISS-016

Add repairable INVALID_PROGRESS_PROTOCOL observations, independent
PROGRESS_PROTOCOL_VIOLATED saturation, and controlled release paths.
Archive the OpenSpec change after syncing main specs and devflow.
This commit is contained in:
zhuyongxin
2026-07-27 19:10:07 +08:00
parent 5c369f3b6c
commit 38f781b157
44 changed files with 977 additions and 80 deletions
@@ -38,7 +38,7 @@ Fallback 必须在不暴露 Prompt、原始 Draft、原始 Tool 载荷和内部
| 阶段 | 状态 | 已完成 | 剩余缺口 |
|---|---|---|---|
| 阶段 1:Diagnosis Agent 硬停止策略 | 部分完成 | ISS-016 已实现 Tool Scope 归一化与去重、`GAINED/NO_GAIN` 信息增益、连续 `NO_GAIN` 饱和停止、受控 Fallback、回归测试和真实 E2E | 连续 `INVALID_PROGRESS_PROTOCOL` 拒绝不会进入 `NO_GAIN`,仍可能在硬模型/Token 预算前空转 |
| 阶段 1:Diagnosis Agent 硬停止策略 | 已完成 | ISS-016 已实现 Tool Scope 归一化与去重、`GAINED/NO_GAIN` 信息增益、连续 `NO_GAIN` 饱和停止、连续协议错误 `PROGRESS_PROTOCOL_VIOLATED` 受控停止、可修正协议 observation、受控 Fallback、回归测试和真实 E2E | 无;阶段 1 停止策略已收口 |
| 阶段 2:Evidence Repair Schema | 未完成 | Repair 仍保持无 Tool、有限重试、失败后安全降级;Diagnosis Agent 最终输出已使用真实 `DiagnosisDraft` Schema | Evidence Repair 自身尚未注入真实 `DiagnosisDraft` JSON Schema,仍主要依赖 Prompt 文本约束和严格解析 |
| 阶段 3:Reasoning 审计验证与治理 | 部分完成 | V015、独立 `agent_reasoning_audit`、审计 Hook、`reasoning_available=false`、受限查询接口和 `sessionId + runId` 归属校验已实现 | 真实 Provider reasoning metadata 行为、V015 真实迁移验收、访问控制、保留期限和加密要求尚未收敛 |
| 阶段 4:Fallback 信息质量与最终 E2E | 大部分完成 | 已实现有界 `observed_facts`、`validation_issues`、证据范围/缺口和差异化 Fallback;已完成 Diagnosis SUCCESS、信息不足 FALLBACK、Trace/Tool/Token 对账 E2E | reasoning unavailable 场景及 Reasoning Audit 跨表精确核验尚未完成;全部失败路径仍需最终综合验收 |
@@ -56,12 +56,13 @@ Fallback 必须在不暴露 Prompt、原始 Draft、原始 Tool 载荷和内部
## 5. 实施阶段
### 阶段 1:Diagnosis Agent 硬停止策略(部分完成)
### 阶段 1:Diagnosis Agent 硬停止策略(已完成)
- 限制证据收集轮次和重复 `lookup_knowledge`。
- 在预算耗尽前向 Agent 注入停止信号并要求输出最终 Draft。
- 区分正常 ReAct 轮次、新 Tool Action 和真正的预算耗尽。
- 增加重复检索、临界预算和无足够证据时的回归测试。
- 连续 `INVALID_PROGRESS_PROTOCOL` 独立计数,达到阈值后以 `PROGRESS_PROTOCOL_VIOLATED` 受控停止。
- 增加重复检索、临界预算、协议错误修复/停止和无足够证据时的回归测试。
### 阶段 2:Evidence Repair Schema(未完成)