docs(issue): archive legacy issues and add iss-015

This commit is contained in:
zhuyongxin
2026-07-23 19:54:01 +08:00
parent 529f4ff43b
commit 49180abccf
18 changed files with 186 additions and 40 deletions
+7
View File
@@ -1,5 +1,12 @@
# devflow 索引 # devflow 索引
## Issue 生命周期
| Issue | 状态 | 说明 |
|---|---|---|
| ISS-014 | archived | 阶段 0-7 的单体 Diagnosis Agent、Harness、ACI、SSE、清理和最终 E2E 已完成并归档;阶段实现对应的 11 个 devflow/OpenSpec 项目均已 archived。 |
| ISS-015 | active | 承接 ISS-014 E2E 后发现的 Agent 硬停止、Evidence Repair Schema、Reasoning 审计验证/治理和 Fallback 信息质量问题。 |
## 项目 ## 项目
| 日期 | slug | 说明 | 领域 | 关键词 | 关联 OpenSpec | 状态 | | 日期 | slug | 说明 | 领域 | 关键词 | 关联 OpenSpec | 状态 |
@@ -10,7 +10,7 @@
- `devflow/index.md` was checked. Relevant history includes `session-storage`, `confidence-feedback`, `executor-action-memory-relevance`, and `chat-verifier-agent`. - `devflow/index.md` was checked. Relevant history includes `session-storage`, `confidence-feedback`, `executor-action-memory-relevance`, and `chat-verifier-agent`.
- `mvp/archive/2026-07-09-doc-cleanup/notes/agent-engineering-decisions.md` already recommends the next phase as "可复现 MVP Demo", including `mvp-demo` profile, fixed diagnosis case, one-click request, and `GET /api/diagnosis/{sessionId}/trace`. - `mvp/archive/2026-07-09-doc-cleanup/notes/agent-engineering-decisions.md` already recommends the next phase as "可复现 MVP Demo", including `mvp-demo` profile, fixed diagnosis case, one-click request, and `GET /api/diagnosis/{sessionId}/trace`.
- `mvp/issues/active/ISS-003-mvp-design-implementation-review.md` identifies test stability, session traceability, verifier evidence chain, upload path, and SupervisorAgent consistency as recent MVP concerns. Security cleanup is intentionally deferred by user decision. - `mvp/issues/archived/ISS-003-mvp-design-implementation-review.md` identifies test stability, session traceability, verifier evidence chain, upload path, and SupervisorAgent consistency as historical MVP concerns. Security cleanup was intentionally deferred by user decision at that time.
## Question Pool ## Question Pool
@@ -2,7 +2,7 @@
## Draft Acceptance ## Draft Acceptance
- [x] Issue exists: `mvp/issues/active/executor-evidence-attribution-hallucination.md`. - [x] Issue exists: `mvp/issues/archived/executor-evidence-attribution-hallucination.md`.
- [x] OpenSpec change artifacts exist. - [x] OpenSpec change artifacts exist.
- [x] devflow tracking files exist. - [x] devflow tracking files exist.
- [x] OpenSpec validation passes. - [x] OpenSpec validation passes.
@@ -6,7 +6,7 @@
- 当前问题:Harness Core 和三类 evidence Tool 已就绪,但没有一个内部诊断执行链消费它们;公开 Chat 仍依赖旧的简单/多 Agent 路径。 - 当前问题:Harness Core 和三类 evidence Tool 已就绪,但没有一个内部诊断执行链消费它们;公开 Chat 仍依赖旧的简单/多 Agent 路径。
- 关联 OpenSpec:`openspec/changes/archive/2026-07-21-single-react-diagnosis-agent/` - 关联 OpenSpec:`openspec/changes/archive/2026-07-21-single-react-diagnosis-agent/`
- devflow 分档:complex - devflow 分档:complex
- 需求真理源:`mvp/issues/active/ISS-014-single-react-agent-harness-aci-ptk-refactor.md`,不重复创建独立 PRD。 - 需求真理源:`mvp/issues/archived/ISS-014-single-react-agent-harness-aci-ptk-refactor.md`,不重复创建独立 PRD。
## 范围 ## 范围
@@ -4,7 +4,7 @@
| 来源 | 证据 | 结论 | 是否已汇报 | | 来源 | 证据 | 结论 | 是否已汇报 |
|---|---|---|---| |---|---|---|---|
| `mvp/issues/active/ISS-014-single-react-agent-harness-aci-ptk-refactor.md` | 阶段 4 明确单 Agent、内部入口、极简上下文、结构化 Draft、无重试和预算验收 | 本 change 不得切换公开入口或删除旧链路 | 是 | | `mvp/issues/archived/ISS-014-single-react-agent-harness-aci-ptk-refactor.md` | 阶段 4 明确单 Agent、内部入口、极简上下文、结构化 Draft、无重试和预算验收 | 本 change 不得切换公开入口或删除旧链路 | 是 |
| `ChatService.java` + GitNexus references | `createReactAgent` 被旧策略入口调用;复杂路径仍创建 Planner/Executor/Verifier/Composer | 新实现必须是独立内部 use case,不能复用旧 Service 运行职责 | 是 | | `ChatService.java` + GitNexus references | `createReactAgent` 被旧策略入口调用;复杂路径仍创建 Planner/Executor/Verifier/Composer | 新实现必须是独立内部 use case,不能复用旧 Service 运行职责 | 是 |
| Spring AI Alibaba 1.1.2.0 `ReactAgent`/`AgentLlmNode` sources | 框架自带 ReAct loop;非流式 `ModelResponse` 保留 `ChatResponse` Usage | 不手写循环,使用 ModelInterceptor 强制模型/Token 预算 | 是 | | Spring AI Alibaba 1.1.2.0 `ReactAgent`/`AgentLlmNode` sources | 框架自带 ReAct loop;非流式 `ModelResponse` 保留 `ChatResponse` Usage | 不手写循环,使用 ModelInterceptor 强制模型/Token 预算 | 是 |
| Spring AI Alibaba `ToolCallRequest`/`AgentToolNode` sources | `ToolCallRequest.getToolCallId()` 来自 `AssistantMessage.ToolCall.id()`,Tool interceptor 在 callback 前执行 | 可以精确传播框架 ID,不生成第二套 ID | 是 | | Spring AI Alibaba `ToolCallRequest`/`AgentToolNode` sources | `ToolCallRequest.getToolCallId()` 来自 `AssistantMessage.ToolCall.id()`,Tool interceptor 在 callback 前执行 | 可以精确传播框架 ID,不生成第二套 ID | 是 |
@@ -53,3 +53,5 @@ Accepted. 阶段 7 的清理、Harness-native audit、文档收口和 live E2E
- OpenSpec archive: completed at `openspec/changes/archive/2026-07-22-single-react-cleanup-e2e`。 - OpenSpec archive: completed at `openspec/changes/archive/2026-07-22-single-react-cleanup-e2e`。
- Delta specs synced: created main `single-react-cleanup-e2e` spec and removed the temporary AiOps-preservation requirement from `single-react-chat-sse-cutover`。 - Delta specs synced: created main `single-react-cleanup-e2e` spec and removed the temporary AiOps-preservation requirement from `single-react-chat-sse-cutover`。
- Parent Issue `ISS-014` was closed and moved to `mvp/issues/archived/` after the stage 7 E2E evidence was accepted.
- Post-E2E runtime-quality findings are tracked by active `ISS-015`; they do not reopen this completed cleanup change.
+1 -1
View File
@@ -22,7 +22,7 @@
| [architecture/data-model.md](architecture/data-model.md) | 数据模型总览 | | [architecture/data-model.md](architecture/data-model.md) | 数据模型总览 |
| [architecture/evolution-roadmap.md](architecture/evolution-roadmap.md) | Agent 架构演进路线 | | [architecture/evolution-roadmap.md](architecture/evolution-roadmap.md) | Agent 架构演进路线 |
| [issues/README.md](issues/README.md) | MVP issue 索引 | | [issues/README.md](issues/README.md) | MVP issue 索引 |
| [issues/active/rag-refactor-plan.md](issues/active/rag-refactor-plan.md) | RAG 重构计划和阶段拆解 | | [issues/archived/rag-refactor-plan.md](issues/archived/rag-refactor-plan.md) | 已过时的 RAG 重构计划(仅供历史追溯) |
| [tables/README.md](tables/README.md) | 当前 MySQL 表说明 | | [tables/README.md](tables/README.md) | 当前 MySQL 表说明 |
| [demo/README.md](demo/README.md) | Demo 运行和面试演示材料 | | [demo/README.md](demo/README.md) | Demo 运行和面试演示材料 |
| [demo/ten-minute-interview-demo.md](demo/ten-minute-interview-demo.md) | 10 分钟面试演示脚本 | | [demo/ten-minute-interview-demo.md](demo/ten-minute-interview-demo.md) | 10 分钟面试演示脚本 |
@@ -209,7 +209,7 @@ Deferred future enhancements:
## 10. Supporting Materials ## 10. Supporting Materials
- `mvp/issues/rag-refactor-plan.md` - `mvp/issues/archived/rag-refactor-plan.md`
- `eval/rag-retrieval/README.md` - `eval/rag-retrieval/README.md`
- `scripts/eval_rag_live_acceptance.py` - `scripts/eval_rag_live_acceptance.py`
- `interview/rag-refactor-story.md` - `interview/rag-refactor-story.md`
@@ -2,7 +2,7 @@
**更新日期**:2026-07-06 **更新日期**:2026-07-06
**状态**:当前主架构 + 后续演进边界 **状态**:当前主架构 + 后续演进边界
**关联计划**:[`mvp/issues/active/rag-refactor-plan.md`](../issues/active/rag-refactor-plan.md) **关联计划**:[`mvp/issues/archived/rag-refactor-plan.md`](../../../issues/archived/rag-refactor-plan.md)
## 1. 架构目标 ## 1. 架构目标
+11 -10
View File
@@ -1,6 +1,6 @@
# MVP Issues 索引 # MVP Issues 索引
**更新日期**:2026-07-20 **更新日期**:2026-07-23
**状态**:按活跃问题、设计笔记、RAG 问题集和已归档问题整理 **状态**:按活跃问题、设计笔记、RAG 问题集和已归档问题整理
## 目录约定 ## 目录约定
@@ -9,20 +9,14 @@
|---|---| |---|---|
| [active/](active/) | 仍需要规划或实现的问题 | | [active/](active/) | 仍需要规划或实现的问题 |
| [design-notes/](design-notes/) | 已形成方向、用于指导后续实现的设计记录 | | [design-notes/](design-notes/) | 已形成方向、用于指导后续实现的设计记录 |
| [rag/](rag/) | RAG 子问题集合;多数已合并到 RAG 重构计划 | | [rag/](rag/) | RAG 历史子问题集合;不代表当前实施计划 |
| [archived/](archived/) | 已修复、已实施或已归档的问题 | | [archived/](archived/) | 已修复、已实施或已归档的问题 |
## 活跃问题 ## 活跃问题
| 名称 | 标题 | 严重程度 | 状态 | 文件 | | 名称 | 标题 | 严重程度 | 状态 | 文件 |
|---|---|---|---|---| |---|---|---|---|---|
| ISS-003 | MVP 设计与实现 Review 收敛 | 高 | 待规划 | [active/ISS-003-mvp-design-implementation-review.md](active/ISS-003-mvp-design-implementation-review.md) | | ISS-015 | 诊断运行质量与 Reasoning 审计收敛 | 高 | 待实施 | [active/ISS-015-diagnosis-runtime-quality-and-reasoning-audit.md](active/ISS-015-diagnosis-runtime-quality-and-reasoning-audit.md) |
| ISS-004 | Executor 域级检索水位控制 | 低 | 待规划 | [active/ISS-004-executor-domain-hard-limit.md](active/ISS-004-executor-domain-hard-limit.md) |
| ISS-012 | Executor Token 预算与上下文膨胀 | 高 | 待规划 | [active/ISS-012-executor-token-budget-and-context-growth.md](active/ISS-012-executor-token-budget-and-context-growth.md) |
| ISS-013 | Chat 入口解耦与真正 SSE 收敛 | 高 | 待规划 | [active/ISS-013-chat-entry-decoupling-and-sse.md](active/ISS-013-chat-entry-decoupling-and-sse.md) |
| ISS-014 | 单体 ReAct Agent、Harness 与 ACI 工具瘦身 | 高 | 待阶段 0 冻结 | [active/ISS-014-single-react-agent-harness-aci-ptk-refactor.md](active/ISS-014-single-react-agent-harness-aci-ptk-refactor.md) |
| executor-evidence-attribution-hallucination | Executor 证据归因幻觉 | 高 | 待规划 | [active/executor-evidence-attribution-hallucination.md](active/executor-evidence-attribution-hallucination.md) |
| rag-refactor-plan | RAG 检索重构计划 | 高 | 待规划 | [active/rag-refactor-plan.md](active/rag-refactor-plan.md) |
## 设计笔记 ## 设计笔记
@@ -33,7 +27,7 @@
## RAG 问题集 ## RAG 问题集
这些问题已经收敛到 [active/rag-refactor-plan.md](active/rag-refactor-plan.md),单个文件保留用于追溯原始问题和设计背景。 这些问题曾经收敛到 RAG 重构计划,单个文件保留用于追溯原始问题和设计背景。原计划已因架构变化归档,不作为当前实施依据。
| 名称 | 标题 | 状态 | 文件 | | 名称 | 标题 | 状态 | 文件 |
|---|---|---|---| |---|---|---|---|
@@ -57,12 +51,19 @@
|---|---|---|---| |---|---|---|---|
| ISS-001 | Executor 重复召回同一文档 | 已修复 | [archived/ISS-001-duplicate-retrieval.md](archived/ISS-001-duplicate-retrieval.md) | | ISS-001 | Executor 重复召回同一文档 | 已修复 | [archived/ISS-001-duplicate-retrieval.md](archived/ISS-001-duplicate-retrieval.md) |
| ISS-002 | Executor 无约束重复调用 lookup_knowledge | 已修复 | [archived/ISS-002-executor-unconstrained-lookup.md](archived/ISS-002-executor-unconstrained-lookup.md) | | ISS-002 | Executor 无约束重复调用 lookup_knowledge | 已修复 | [archived/ISS-002-executor-unconstrained-lookup.md](archived/ISS-002-executor-unconstrained-lookup.md) |
| ISS-003 | MVP 设计与实现 Review 收敛 | Review 基线过时 | [archived/ISS-003-mvp-design-implementation-review.md](archived/ISS-003-mvp-design-implementation-review.md) |
| ISS-004 | Executor 域级检索水位控制 | 已被 ISS-014 吸收 | [archived/ISS-004-executor-domain-hard-limit.md](archived/ISS-004-executor-domain-hard-limit.md) |
| ISS-005 | 证据链补齐与降级契约收敛 | 已归档 | [archived/ISS-005-evidence-trace-hardening.md](archived/ISS-005-evidence-trace-hardening.md) | | ISS-005 | 证据链补齐与降级契约收敛 | 已归档 | [archived/ISS-005-evidence-trace-hardening.md](archived/ISS-005-evidence-trace-hardening.md) |
| ISS-006 | 固定诊断评测集与回归 Harness | 已归档 | [archived/ISS-006-diagnosis-eval-harness.md](archived/ISS-006-diagnosis-eval-harness.md) | | ISS-006 | 固定诊断评测集与回归 Harness | 已归档 | [archived/ISS-006-diagnosis-eval-harness.md](archived/ISS-006-diagnosis-eval-harness.md) |
| ISS-007 | Verifier 证据摘要保真与工具命中质量问题 | 已实施 | [archived/ISS-007-verifier-evidence-summary-fidelity.md](archived/ISS-007-verifier-evidence-summary-fidelity.md) | | ISS-007 | Verifier 证据摘要保真与工具命中质量问题 | 已实施 | [archived/ISS-007-verifier-evidence-summary-fidelity.md](archived/ISS-007-verifier-evidence-summary-fidelity.md) |
| ISS-008 | Executor 窄范围查询越界 | 已修复 | [archived/ISS-008-executor-narrow-scope-overreach.md](archived/ISS-008-executor-narrow-scope-overreach.md) | | ISS-008 | Executor 窄范围查询越界 | 已修复 | [archived/ISS-008-executor-narrow-scope-overreach.md](archived/ISS-008-executor-narrow-scope-overreach.md) |
| ISS-009 | negative_observation 精确引用 no-evidence 结果 | 已修复 | [archived/ISS-009-negative-observation-no-evidence-reference.md](archived/ISS-009-negative-observation-no-evidence-reference.md) | | ISS-009 | negative_observation 精确引用 no-evidence 结果 | 已修复 | [archived/ISS-009-negative-observation-no-evidence-reference.md](archived/ISS-009-negative-observation-no-evidence-reference.md) |
| ISS-010 | 同 session 多轮诊断 Trace 隔离 | 已归档 | [archived/ISS-010-session-run-trace-isolation.md](archived/ISS-010-session-run-trace-isolation.md) | | ISS-010 | 同 session 多轮诊断 Trace 隔离 | 已归档 | [archived/ISS-010-session-run-trace-isolation.md](archived/ISS-010-session-run-trace-isolation.md) |
| ISS-012 | Executor Token 预算与上下文膨胀 | 已归档 | [archived/ISS-012-executor-token-budget-and-context-growth.md](archived/ISS-012-executor-token-budget-and-context-growth.md) |
| ISS-013 | Chat 入口解耦与真正 SSE 收敛 | 已归档 | [archived/ISS-013-chat-entry-decoupling-and-sse.md](archived/ISS-013-chat-entry-decoupling-and-sse.md) |
| ISS-014 | 单体 ReAct Agent、Harness 与 ACI 工具瘦身 | 已完成并归档 | [archived/ISS-014-single-react-agent-harness-aci-ptk-refactor.md](archived/ISS-014-single-react-agent-harness-aci-ptk-refactor.md) |
| executor-evidence-attribution-hallucination | Executor 证据归因幻觉 | 旧架构问题被 ISS-014 替代 | [archived/executor-evidence-attribution-hallucination.md](archived/executor-evidence-attribution-hallucination.md) |
| rag-refactor-plan | RAG 检索重构计划 | 设计过时 | [archived/rag-refactor-plan.md](archived/rag-refactor-plan.md) |
| diagnosis-eval-baseline-diff | 诊断评测 baseline diff 与回归判断 | 已归档 | [archived/diagnosis-eval-baseline-diff.md](archived/diagnosis-eval-baseline-diff.md) | | diagnosis-eval-baseline-diff | 诊断评测 baseline diff 与回归判断 | 已归档 | [archived/diagnosis-eval-baseline-diff.md](archived/diagnosis-eval-baseline-diff.md) |
| expand-diagnosis-eval-fixtures | 补齐固定诊断评测 fixture 与 baseline | 已归档 | [archived/expand-diagnosis-eval-fixtures.md](archived/expand-diagnosis-eval-fixtures.md) | | expand-diagnosis-eval-fixtures | 补齐固定诊断评测 fixture 与 baseline | 已归档 | [archived/expand-diagnosis-eval-fixtures.md](archived/expand-diagnosis-eval-fixtures.md) |
| mvp-demo-interview-runbook | Plan C 面试可复现 Demo 包 | 已归档 | [archived/mvp-demo-interview-runbook.md](archived/mvp-demo-interview-runbook.md) | | mvp-demo-interview-runbook | Plan C 面试可复现 Demo 包 | 已归档 | [archived/mvp-demo-interview-runbook.md](archived/mvp-demo-interview-runbook.md) |
@@ -0,0 +1,103 @@
# ISS-015 诊断运行质量与 Reasoning 审计收敛
**状态**:待实施
**严重程度**:高
**发现时间**:2026-07-23
**来源**:ISS-014 阶段 7 及后续真实 E2E 验证
**关联**:ISS-014、ISS-004、executor-evidence-attribution-hallucination
---
## 1. 背景
ISS-014 已完成单体 Diagnosis ReAct Agent、Harness、ACI Tool、EvidenceGuard、SemanticGuard、SSE 和旧架构清理,并通过阶段 7 E2E 以及后续 Diagnosis/Knowledge Query 成功用例验证主链路。真实 E2E 同时暴露了新的运行质量问题:Agent 可能重复检索直至预算耗尽,Evidence Repair 可能因输出 Schema 不完整而解析失败,Reasoning 审计能力尚未完成真实 Provider 和数据库验证,安全 Fallback 在部分失败路径下仍缺少足够信息。
这些问题发生在 ISS-014 架构切换和验收之后,不重新打开 ISS-014,也不改变已经冻结的单体 Agent/Harness/ACI 架构。本 Issue 作为后续唯一追踪入口。
## 2. 用户体验问题
### 2.1 审计需要保留 Agent 思考记录
用户需要在后续审计中查看 Agent 的思考过程,确认它为什么选择某个 Tool、如何从观察结果继续行动以及在哪个阶段停止。该记录必须是独立的审计数据,不能混入业务事实、Evidence Snapshot、普通 Trace 或 SSE,也不能把未由 Provider 返回的内容伪造成思考记录。
### 2.2 失败结果不能只给空泛结论
当前失败路径可能直接返回“当前证据无法完成真实性校验,无法确认根因”。这虽然避免了无依据结论,但没有告诉用户已经观察到什么、校验在哪个阶段失败、缺少哪些信息以及下一步可以怎么查,导致用户无法判断系统是否真的执行过有效排查。
Fallback 必须在不暴露 Prompt、原始 Draft、原始 Tool 载荷和内部异常的前提下,提供有界的 `failure_stage`、`observed_facts`、`validation_issues`、查询范围、已完成的 Tool/证据阶段和可执行的 `next_steps`。
## 3. 已有验证基线
- Diagnosis 成功:`sessionId=mvp-demo-success-e2e-20260722-2032`,`runId=e72d9c7b-2f78-44c8-9086-f2e9d6987f24`,`release_outcome=SUCCESS`,总 Token 8455,Tool 调用 1 次。
- Knowledge Query 成功:`sessionId=mvp-demo-order-timeout-fixed-20260723`,`runId=2b704d1b-8f11-40ee-a4c6-5e5e04d3847c`,`release_outcome=SUCCESS`,总 Token 1998。
- 失败会话 `session_ud9pzde7r_1784785531138` 暴露两类问题:Evidence Repair `PARSE_ERROR`;Diagnosis Agent 重复调用 `lookup_knowledge`,最终在 12 次 Tool 调用、45087 Token 后进入 `BUDGET_EXHAUSTED`。
- `diagnosis_trace_event`、信息化 Fallback、`agent_reasoning_audit` 和 reasoning 查询接口已经实现并通过 focused tests;真实 Provider/V015 验证仍属于本 Issue。
## 4. 目标
1. Agent 在证据轮次或单 Tool 预算接近上限时停止继续检索,并生成当前证据允许的最终 Draft。
2. Evidence Repair 使用真实 `DiagnosisDraft` JSON Schema,消除结构修复阶段的 `PARSE_ERROR`。
3. Reasoning 审计在真实 Provider 返回和不返回 reasoning 的两种情况下都有明确、可查询的审计结果。
4. Reasoning 原文保持独立受限存储,不进入普通 SSE、Trace、证据快照或业务结果。
5. Fallback 在不泄露 Prompt、Draft 和原始 Tool 数据的前提下,说明失败阶段、已观察事实和校验问题。
6. 用户在失败时至少能知道系统执行到哪个阶段、看到了哪些有界事实、哪些校验未通过以及下一步应补充什么信息。
## 5. 实施阶段
### 阶段 1:Diagnosis Agent 硬停止策略
- 限制证据收集轮次和重复 `lookup_knowledge`。
- 在预算耗尽前向 Agent 注入停止信号并要求输出最终 Draft。
- 区分正常 ReAct 轮次、新 Tool Action 和真正的预算耗尽。
- 增加重复检索、临界预算和无足够证据时的回归测试。
### 阶段 2:Evidence Repair Schema
- 使用框架 `BeanOutputConverter<DiagnosisDraft>` 或等价结构化转换器注入实际 JSON Schema。
- 保持 Repair 无 Tool、最多一次、失败即安全 Fallback 的现有边界。
- 覆盖合法修复、Schema 非法、解析失败和二次 EvidenceGuard 失败。
### 阶段 3:Reasoning 审计验证与治理
- 使用真实 Provider 验证 reasoning metadata 的键和返回行为。
- Provider 不返回 reasoning 时写入 `reasoning_available=false`,不得伪造内容。
- 验证 V015 数据库迁移和 `sessionId + runId` 精确 reasoning 查询。
- 明确 reasoning 审计接口的访问控制、保留期限和加密要求。
### 阶段 4:Fallback 信息质量与最终 E2E
- 工具成功但无法构造 verified snapshot 时,返回有界 `observed_facts` 和 `validation_issues`。
- 确保普通 Trace 只记录 `reasoning_available/reasoning_bytes`,不返回 reasoning 原文。
- 运行至少一个 Diagnosis SUCCESS、一个信息化 FALLBACK 和一个 reasoning unavailable 的真实 E2E。
- 按 exact `sessionId + runId` 核对 SSE、Trace、Reasoning Audit、ToolInvocation 和 Run 终态。
## 6. 验收标准
- 重复检索场景不会因第 9 次同 Tool 调用才被动触发 `BUDGET_EXHAUSTED`。
- Agent 在有证据时可形成合法 Draft;证据不足时形成无强结论的合法 Draft 或信息化 Fallback。
- Evidence Repair 的真实模型输出不再出现因缺失 `DiagnosisDraft` Schema 导致的 `PARSE_ERROR`。
- V015 在真实数据库中迁移成功,reasoning 查询严格校验 path `sessionId` 与 query `runId` 的归属关系。
- Provider 无 reasoning 时仍有审计记录;Provider 有 reasoning 时原文只存在于受限审计接口。
- 普通 SSE、Trace、日志、Evidence Snapshot 和发布结果均不包含 reasoning 原文、Prompt 或原始 Tool 载荷。
- 审计查询能按精确 `sessionId + runId` 返回每个 Agent 模型步骤的 reasoning 可用性、步骤顺序、字节数和受限原文;不存在跨 Session/Run 串读。
- 失败 Fallback 不再只返回固定的“无法确认根因”文本;至少包含失败阶段、非敏感观察事实、具体校验问题、证据范围/缺口和下一步建议。
- `observed_facts` 和 `validation_issues` 有长度和字段边界,不能泄露 Prompt、完整上下文、原始 Tool 响应、凭据或内部堆栈。
- 在无证据、EvidenceGuard 失败、Evidence Repair 失败、SemanticGuard UNSUPPORTED 和预算耗尽等路径下,用户都能区分失败原因,而不是收到同一种空泛结论。
- 三类最终 E2E 证据和精确数据库核验完成归档。
## 7. 流程门禁
- 每个阶段使用独立 OpenSpec change 和完整串行 sm-flow。
- 每阶段完成 Apply、focused tests、验收证据、Archive 和独立 Git commit 后再进入下一阶段。
- 阶段 1-3 不运行完整 live E2E;阶段 4 统一完成最终真实验证。
- 不重新引入 Planner/Executor/Verifier/Composer、业务 Graph、第二 Chat 入口或通用工作流 DSL。
## 8. 相关文件
- `mvp/issues/archived/ISS-014-single-react-agent-harness-aci-ptk-refactor.md`
- `src/main/java/com/superbiz/agent/harness/agent/DiagnosisAgentFactory.java`
- `src/main/java/com/superbiz/agent/harness/release/EvidenceRepair.java`
- `src/main/java/com/superbiz/agent/harness/release/SafeFallbackFactory.java`
- `src/main/java/com/superbiz/agent/harness/audit/HarnessAgentAuditHook.java`
- `src/main/java/com/superbiz/agent/service/DiagnosisTraceService.java`
- `src/main/resources/db/migration/V015__create_agent_reasoning_audit.sql`
@@ -1,9 +1,18 @@
# ISS-003 MVP 设计与实现 Review 收敛 # ISS-003 MVP 设计与实现 Review 收敛
**状态**:待规划 **状态**:已归档(Review 基线过时)
**严重程度**:高 **严重程度**:高
**发现时间**:2026-07-03 **发现时间**:2026-07-03
**来源**:MVP 版本设计与实现 review **来源**:MVP 版本设计与实现 review
**归档时间**:2026-07-23
---
## 归档说明
本 Issue 基于早期 Planner/Executor/Verifier、Redis Session 和旧 Tool Trace 架构进行总体 Review。其主要问题后来分别由凭据清理、Session/Run 隔离、证据链加固、文档路径修复和 ISS-014 单体 Diagnosis Agent/Harness 重构处理或替代;原文件中的类名、入口、优先级和建议方案已经不能准确描述当前系统。
仍可能存在的测试隔离、CORS 或 Redis 序列化风险不继续挂在本旧 Review 下。后续需要处理时,应基于当前代码和 ISS-014 架构重新建立范围明确的 Issue。本 Issue 以“Review 基线过时”归档,不作为当前缺陷清单或实施依据。
--- ---
@@ -1,9 +1,18 @@
# ISS-004 Executor 域级检索水位控制(Phase 2) # ISS-004 Executor 域级检索水位控制(Phase 2)
**状态**:待规划 **状态**:已归档(范围被 ISS-014 吸收)
**严重程度**:低 **严重程度**:低
**发现时间**:2026-07-01 **发现时间**:2026-07-01
**关联**:ISS-002(Executor 无约束重复调用 lookup_knowledge) **关联**:ISS-002(Executor 无约束重复调用 lookup_knowledge)
**归档时间**:2026-07-23
---
## 归档说明
本问题不再按旧 Executor 的 Session/Domain 水位矩阵独立实施。当前架构已经由 ISS-014 收敛为单体 Diagnosis ReAct Agent 与 Harness,重复 `lookup_knowledge`、证据轮次上限和预算耗尽前强制生成最终 Draft 统一由 ISS-014 的 Agent 硬停止策略处理。
原问题仍然有效,但实现入口、生命周期边界和验收方式已经改变;剩余工作统一追踪到 [ISS-015 Diagnosis Agent 硬停止策略](../active/ISS-015-diagnosis-runtime-quality-and-reasoning-audit.md#阶段-1diagnosis-agent-硬停止策略),本 Issue 以“范围被吸收”归档,不表示硬停止策略已经完成。
--- ---
@@ -1,4 +1,4 @@
# SuperBizAgent ISS-014 交接文档 # SuperBizAgent ISS-014 归档与 ISS-015 交接文档
## 当前上下文 ## 当前上下文
@@ -13,7 +13,7 @@
2. Knowledge Query 使用 `BeanOutputConverter<KnowledgeAnswerDraft>` 注入实际 JSON Schema,修复缺少 Schema 导致的 `Knowledge answer is invalid`。 2. Knowledge Query 使用 `BeanOutputConverter<KnowledgeAnswerDraft>` 注入实际 JSON Schema,修复缺少 Schema 导致的 `Knowledge answer is invalid`。
3. Fallback 增加 `failure_stage`、`observed_facts`、`validation_issues`,为失败提供可操作的阶段、事实和校验信息,同时不暴露 Prompt、原始 Draft 或 Tool 载荷。 3. Fallback 增加 `failure_stage`、`observed_facts`、`validation_issues`,为失败提供可操作的阶段、事实和校验信息,同时不暴露 Prompt、原始 Draft 或 Tool 载荷。
4. 新增 `agent_reasoning_audit` 表、Repository、Hook 持久化和专用查询接口。只保存模型供应商实际返回的 reasoning 元数据,长度上限 32000 字符;普通 Trace 只展示是否存在及字节数,不返回原文。 4. 新增 `agent_reasoning_audit` 表、Repository、Hook 持久化和专用查询接口。只保存模型供应商实际返回的 reasoning 元数据,长度上限 32000 字符;普通 Trace 只展示是否存在及字节数,不返回原文。
5. ISS-014 已更新,记录上述实现、成功用例、协议边界变化和后续工作。 5. ISS-014 已完成并归档;E2E 后新发现的问题已转移到 ISS-015。
## 已知验证结果 ## 已知验证结果
@@ -22,7 +22,7 @@
- 已通过的重点测试:`HarnessAgentAuditHookTest`、`DiagnosisReleaseUseCaseTest`、`DiagnosisTraceServiceTest`、`HarnessContractTest`、`HarnessChatConfigurationTest`、`ApplicationExecutorsTest`、`ChatApplicationUseCaseTest`、`JpaToolInvocationAuditSinkTest`、`JpaDiagnosisTraceRecorderTest`,以及编译和 `git diff --check`。 - 已通过的重点测试:`HarnessAgentAuditHookTest`、`DiagnosisReleaseUseCaseTest`、`DiagnosisTraceServiceTest`、`HarnessContractTest`、`HarnessChatConfigurationTest`、`ApplicationExecutorsTest`、`ChatApplicationUseCaseTest`、`JpaToolInvocationAuditSinkTest`、`JpaDiagnosisTraceRecorderTest`,以及编译和 `git diff --check`。
- V015 真实数据库迁移、reasoning endpoint 的真实数据库/E2E 尚未验证。 - V015 真实数据库迁移、reasoning endpoint 的真实数据库/E2E 尚未验证。
## 后续实现顺序 ## ISS-015 后续实现顺序
1. 为 Diagnosis Agent 增加硬停止策略:限制证据轮次、阻止重复 `lookup_knowledge`,在预算耗尽前强制输出最终 Draft。 1. 为 Diagnosis Agent 增加硬停止策略:限制证据轮次、阻止重复 `lookup_knowledge`,在预算耗尽前强制输出最终 Draft。
2. 给 Evidence Repair 注入真实 `DiagnosisDraft` Schema,消除运行时 `PARSE_ERROR`。 2. 给 Evidence Repair 注入真实 `DiagnosisDraft` Schema,消除运行时 `PARSE_ERROR`。
@@ -36,7 +36,7 @@
- 不恢复完整端到端验证,除非用户明确要求。 - 不恢复完整端到端验证,除非用户明确要求。
- 不把 reasoning 审计内容当作事实证据,也不加入普通 SSE、Trace 或业务结果。 - 不把 reasoning 审计内容当作事实证据,也不加入普通 SSE、Trace 或业务结果。
- 不提交无关用户文件、演示输出、环境配置和凭据。 - 不提交无关用户文件、演示输出、环境配置和凭据。
- ISS-014 的后续阶段仍按独立 sm-flow/OpenSpec、归档、提交后再进入下一阶段。 - ISS-015 的后续阶段仍按独立 sm-flow/OpenSpec、归档、提交后再进入下一阶段。
## 建议技能 ## 建议技能
@@ -47,7 +47,8 @@
## 关键文件 ## 关键文件
- Issue:`mvp/issues/active/ISS-014-single-react-agent-harness-aci-ptk-refactor.md` - 已归档 Issue:`mvp/issues/archived/ISS-014-single-react-agent-harness-aci-ptk-refactor.md`
- 后续 Issue:`mvp/issues/active/ISS-015-diagnosis-runtime-quality-and-reasoning-audit.md`
- Trace:`src/main/java/com/superbiz/agent/harness/audit/`、`src/main/java/com/superbiz/agent/service/DiagnosisTraceService.java` - Trace:`src/main/java/com/superbiz/agent/harness/audit/`、`src/main/java/com/superbiz/agent/service/DiagnosisTraceService.java`
- Reasoning:`src/main/java/com/superbiz/agent/domain/entity/AgentReasoningAudit.java`、`src/main/java/com/superbiz/agent/harness/audit/HarnessAgentAuditHook.java`、`src/main/resources/db/migration/V015__create_agent_reasoning_audit.sql` - Reasoning:`src/main/java/com/superbiz/agent/domain/entity/AgentReasoningAudit.java`、`src/main/java/com/superbiz/agent/harness/audit/HarnessAgentAuditHook.java`、`src/main/resources/db/migration/V015__create_agent_reasoning_audit.sql`
- Fallback:`src/main/java/com/superbiz/agent/harness/release/SafeFallbackFactory.java` - Fallback:`src/main/java/com/superbiz/agent/harness/release/SafeFallbackFactory.java`
@@ -1,11 +1,12 @@
# ISS-014 单体 ReAct Agent、Harness 与 ACI 工具瘦身 # ISS-014 单体 ReAct Agent、Harness 与 ACI 工具瘦身
**状态**:阶段 0-7 已验收并归档;运行质量改进项进行中 **状态**:已完成并归档(阶段 0-7 已验收,后续问题转移至 ISS-015)
**严重程度**:高 **严重程度**:高
**发现时间**:2026-07-20 **发现时间**:2026-07-20
**目标分支**:`refactor/chat-single-react-harness` **目标分支**:`refactor/chat-single-react-harness`
**基线分支**:`refactor/mvp1.0` **基线分支**:`refactor/mvp1.0`
**关联**:ISS-003、ISS-012、ISS-013、executor-evidence-attribution-hallucination **关联**:ISS-003、ISS-012、ISS-013、executor-evidence-attribution-hallucination
**归档时间**:2026-07-23
--- ---
@@ -1386,9 +1387,9 @@ ISS-014 是总设计 Issue,不创建跨阶段共享的 OpenSpec change。以
实现中不得为这些风险创建 HarnessPlugin、Graph、通用 Tool DSL 或大量预留接口;按各阶段最小范围实现并通过门禁验证。 实现中不得为这些风险创建 HarnessPlugin、Graph、通用 Tool DSL 或大量预留接口;按各阶段最小范围实现并通过门禁验证。
## 17. 阶段 7 后续运行质量改进 ## 17. 阶段 7 验证与后续问题转移
本节记录阶段 7 归档后的实际验证结果和后续开发边界。当前不恢复完整端到端验证,待以下代码项完成后再安排一次受控的成功/失败用例验证。 阶段 7 已完成真实 E2E、日志和数据库验收;后续 Diagnosis 与 Knowledge Query 成功用例进一步验证了新主链路。真实验证中新发现的运行质量问题不重新打开本 Issue,统一转移到 [ISS-015 诊断运行质量与 Reasoning 审计收敛](../active/ISS-015-diagnosis-runtime-quality-and-reasoning-audit.md)。
### 已完成并纳入本次提交 ### 已完成并纳入本次提交
@@ -1401,21 +1402,16 @@ ISS-014 是总设计 Issue,不创建跨阶段共享的 OpenSpec change。以
- Diagnosis 成功用例:`sessionId=mvp-demo-success-e2e-20260722-2032`,`runId=e72d9c7b-2f78-44c8-9086-f2e9d6987f24`,`release_outcome=SUCCESS`,总 Token 8455,Tool 调用 1 次。 - Diagnosis 成功用例:`sessionId=mvp-demo-success-e2e-20260722-2032`,`runId=e72d9c7b-2f78-44c8-9086-f2e9d6987f24`,`release_outcome=SUCCESS`,总 Token 8455,Tool 调用 1 次。
- Knowledge Query 成功用例:`sessionId=mvp-demo-order-timeout-fixed-20260723`,`runId=2b704d1b-8f11-40ee-a4c6-5e5e04d3847c`,`release_outcome=SUCCESS`,总 Token 1998。 - Knowledge Query 成功用例:`sessionId=mvp-demo-order-timeout-fixed-20260723`,`runId=2b704d1b-8f11-40ee-a4c6-5e5e04d3847c`,`release_outcome=SUCCESS`,总 Token 1998。
- 相关 focused tests 和编译已通过;本轮不宣称 V015 数据库迁移和 reasoning endpoint 已完成真实数据库 E2E 验证。 - 相关 focused tests 和编译已通过。V015、reasoning endpoint、Agent 硬停止和 Evidence Repair 的后续真实验证属于 ISS-015,不再作为 ISS-014 归档门禁。
### 下一阶段必须补齐 ### 已转移范围
1. Diagnosis Agent 的硬停止策略:限制证据轮次,预算耗尽前强制生成最终 Draft,阻止重复 `lookup_knowledge`。 Diagnosis Agent 硬停止、Evidence Repair Schema、Reasoning 审计真实验证与治理、Fallback 信息质量已完整迁移到 ISS-015。ISS-014 的单体 Agent/Harness/ACI 架构、阶段实现和 E2E 验收至此关闭。
2. Evidence Repair 的实际 `DiagnosisDraft` Schema 注入,消除真实运行中的 `PARSE_ERROR`。
3. 使用真实 Provider 验证 reasoning 元数据:Provider 不返回时仍需写入 `reasoning_available=false` 的审计记录。
4. 对 V015 迁移和 reasoning 查询接口执行一次受控真实数据库/E2E 验证,并核对 `sessionId + runId`。
5. 明确 reasoning 审计数据的访问控制、保留期限和加密策略。
6. 当工具成功但无法构造 verified snapshot 时,继续细化 Evidence 验证失败的 `observed_facts` 和 `validation_issues`。
## 18. 相关文件 ## 18. 相关文件
- `mvp/issues/active/ISS-012-executor-token-budget-and-context-growth.md` - `mvp/issues/archived/ISS-012-executor-token-budget-and-context-growth.md`
- `mvp/issues/active/ISS-013-chat-entry-decoupling-and-sse.md` - `mvp/issues/archived/ISS-013-chat-entry-decoupling-and-sse.md`
- `mvp/disscus/plan.md` - `mvp/disscus/plan.md`
- `src/main/java/com/superbiz/agent/controller/ChatController.java` - `src/main/java/com/superbiz/agent/controller/ChatController.java`
- `src/main/java/com/superbiz/agent/service/ChatService.java` - `src/main/java/com/superbiz/agent/service/ChatService.java`
@@ -1,10 +1,19 @@
# Executor 证据归因幻觉 # Executor 证据归因幻觉
**状态**:待规划 **状态**:已归档(旧架构问题被 ISS-014 替代)
**严重程度**:高 **严重程度**:高
**发现时间**:2026-07-07 **发现时间**:2026-07-07
**来源**:Trace Workbench 复核 / 最近 Chat 诊断会话低置信分析 **来源**:Trace Workbench 复核 / 最近 Chat 诊断会话低置信分析
**关联**:ISS-005(证据链补齐与降级契约收敛)、ISS-006(固定诊断评测集与回归 Harness)、`chat-verifier-agent`、`diagnosis-playbook-skills` **关联**:ISS-005(证据链补齐与降级契约收敛)、ISS-006(固定诊断评测集与回归 Harness)、`chat-verifier-agent`、`diagnosis-playbook-skills`
**归档时间**:2026-07-23
---
## 归档说明
本问题针对旧 Planner/Executor/Verifier/Composer 链路提出,相关 Executor 与 Verifier 主链路现已被 ISS-014 的单体 Diagnosis Agent、EvidenceGuard、SemanticGuard 和确定性 Release/Fallback 机制替代。旧架构下的输出分区、Verifier `LOW_CONFID` 和 Prompt 修补不再是当前实现入口。
证据引用真实性、语义支持性和信息化 Fallback 已由 ISS-014 统一承接;E2E 后新发现的 Agent 停止策略、Evidence Repair Schema 和审计验证继续在 [ISS-015 诊断运行质量与 Reasoning 审计收敛](../active/ISS-015-diagnosis-runtime-quality-and-reasoning-audit.md) 中追踪。本 Issue 以“旧架构问题被替代”归档,不表示所有诊断质量问题已经关闭。
--- ---
@@ -1,9 +1,18 @@
# RAG 检索重构计划 # RAG 检索重构计划
**状态**:待规划 **状态**:已归档(设计过时)
**严重程度**:高 **严重程度**:高
**发现时间**:2026-07-05 **发现时间**:2026-07-05
**范围**:RAG、检索、知识库、Agent Tool、AIOps 诊断证据链 **范围**:RAG、检索、知识库、Agent Tool、AIOps 诊断证据链
**归档时间**:2026-07-23
---
## 归档说明
本计划基于旧的 Milvus SDK、L0/L1 分层和 `VectorSearchService` 架构,包含 Spring AI VectorStore 旁路迁移、Query Transformer 和多阶段检索替换路线;当前实现已经收敛到 ISS-014 定义的单体 Diagnosis Agent、Harness 和显式 `lookup_knowledge` Tool Contract,原计划中的内部边界、验收口径和阶段拆分均已过时。
本文仅保留作为历史设计背景和 RAG 子问题来源,不再作为当前实现依据。后续若需要改造检索基础设施,应基于当前代码和 ISS-014 的 ACI/证据投影约束新建独立 Issue,不直接沿用本文的阶段计划。
--- ---
@@ -22,4 +22,4 @@ ISS-014 将当前 Chat 多 Agent/Hook/ThreadLocal 主链路重构为一个 Diagn
## Source PRD ## Source PRD
`mvp/issues/active/ISS-014-single-react-agent-harness-aci-ptk-refactor.md` 是本 change 的完整 PRD 和总设计来源,不复制为第二份 PRD。 `mvp/issues/archived/ISS-014-single-react-agent-harness-aci-ptk-refactor.md` 是本 change 的完整 PRD 和总设计来源,不复制为第二份 PRD。