Files
SuperBizAgent-java/devflow/projects/2026-07-26-diagnosis-information-gain-stop-contract/acceptance.md
T
zhuyongxin 38f781b157 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.
2026-07-27 19:10:07 +08:00

69 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Diagnosis 信息增益停止契约 验收
## 结果
已接受。OpenSpec tasks 37/37 完成;用户确认归档 OpenSpec、提交并推送。
## 验证
### 静态验证
- 命令/检查:`openspec validate diagnosis-information-gain-stop-contract --strict`
- 结果:passed
- 备注:Committed OpenSpec 与最终 tasks 一致
- 命令/检查:OpenSpec delta → main specs 同步(6 个 capability)
- 结果:passed
- 备注:新建 `openspec/specs/diagnosis-information-gain-stop-contract/`,并更新 5 个既有 main specs
- 命令/检查:对照 OpenSpec 与代码路径(progress tracker、interceptor、release、trace)
- 结果:passed
- 备注:Task 8 行为与 design/spec 对齐
### 脚本验证
- 命令:`mvn -q "-Dtest=DiagnosisProgressTrackerTest,HarnessToolInterceptorTest,DiagnosisReleaseUseCaseTest,DiagnosisAgentUseCaseTest,HarnessChatConfigurationTest" test`
- 结果:passed(exit 0)
- 备注:覆盖协议 violation_type、可修正 observation、连续协议错误 STOP、Release fail-closed、Agent 受控停止
- 命令:历史全量回归 `mvn -q -Dtest='!MilvusConnectionTest' test`(tasks 6.2/7.5 阶段)
- 结果:passed(`Tests=292, Failures=0, Errors=0, Skipped=3`)
- 备注:未设置 `MILVUS_TOKEN` 时 `MilvusConnectionTest` 失败属外部凭据边界,非本变更回归
### 浏览器/人工验证
- 步骤:Maven 启动真实应用;Query `诊断切换企业失败的问题`;named SSE + logs + `scripts/query_mysql.py` 按 exact sessionId/runId 核对
- 结果:passed
- 备注:
- `sessionId=iss016-final-20260726-a`
- `runId=3ab22ed7-d0ed-45d8-b928-dce5790c0542`
- SSE:`SAFE_FALLBACK` / `MISSING_REQUIRED_CONTEXT` / `done.outcome=FALLBACK`
- DB:`status=SUCCESS`、`intent=DIAGNOSIS`、`release_outcome=FALLBACK`、`tool_call_count=0`、`total_token_count=2890`
- Trace:`RUN_STARTED -> ROUTING_* -> AGENT_MODEL_STEP -> EVIDENCE_GUARD_INITIAL -> RELEASE_DECISION/FALLBACK -> RUN_FINISHED/FALLBACK`
### 未验证
- 本轮 Archive 未再重跑全量 `mvn test` 与完整 live SSE E2E;依赖 Apply 阶段记录与本轮 focused tests。
- 真实 Provider 下连续协议错误的 live E2E 未单独复跑;协议停止由 focused/scripted loop 覆盖。
- ISS-015 阶段 2(Evidence Repair Schema)与阶段 3(Reasoning 治理)不在本 change 范围。
## 已完成范围
- 信息增益停止、scope 去重、STOP_REQUIRED、ProgressSnapshot、统一 Release
- Token 审计与 Tool 拒绝 Trace
- 协议修复反馈 + `PROGRESS_PROTOCOL_VIOLATED` 兜底停止
- 文档:ISS-015 阶段 1、ISS-016、架构文档、glossary 术语、devflow 档案
## 已知限制
- 重复检测只比较确定性 `tool_name + normalized_scope`,不做自然语言语义去重。
- 协议错误阈值默认 2,与无增益阈值独立配置。
- 无安全 ProgressSnapshot 的受控停止继续 fail closed,不伪造用户可见事实。
- 公开 SSE/前端协议无新增字段;模型侧 Tool Envelope 是已确认 L3 变更。
## 交接
- 下一步:OpenSpec 已用户确认归档;代码提交并推送到当前分支。
- OpenSpec 归档确认:用户确认归档(“执行,完后提交推送”)
- 归档位置:`openspec/changes/archive/2026-07-27-diagnosis-information-gain-stop-contract/`