Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
140 changes: 38 additions & 102 deletions docs/architecture/deep-review.md

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions docs/sdlc-harness/agent-workflow-staged-plan.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,17 +61,17 @@ BitFun 不需要把 dynamic workflow 做成一个新的主产品模式。用户
| 风险信号 | 安全、性能、架构、跨模块、关键 UI 流程或验证缺口只用于指导同一个 reviewer 的关注点,不自动扩展 reviewer 数量 |
| 严格审查条件 | 当前由 `/review strict`、历史 `/DeepReview` alias 或内部显式 strict follow-up 启动;大型 PR、风险标签和团队策略本身不自动触发 |
| GUI | 一个 Review 面板,按问题优先级合并输出 |
| 成本 | 显式严格审查前显示范围、计划 reviewer/调用数、并发或耗时倾向和只读边界;不展示无法证明的 Token 估算,也不声称提供尚未实现的范围调整 |
| 成本 | 显式严格审查前显示范围、一次计划主审、最多三次审查代理执行的硬上限、耗时倾向和只读边界;不估算底层模型请求或 Token,也不声称提供尚未实现的范围调整 |
| 完成标准 | 必须修复、建议确认、已覆盖、未覆盖、下一步清楚 |
| 禁止 | 把 PR 审查压进 P0 默认体验,或把 DeepReview 作为普通 review 默认入口 |

当前产品落点:

- 文件变更菜单和命令面板只提供 `Review`,不让用户先选“普通/严格”。
- `/review` 始终启动一个只读 reviewer,并由模型根据目标证据决定检查深度;`/review strict` 表达用户明确要求多 reviewer 严格覆盖,`/DeepReview` 仅保留历史兼容。
- `/review` 始终启动一个只读 reviewer,并由模型根据目标证据决定检查深度;`/review strict` 表达用户明确要求严格主审,但不自动增加 reviewer。主审仅在具体不确定性确实需要独立视角时调用一个专家,`/DeepReview` 仅保留历史兼容。
- 目标证据先于 Review 决策:当前工作区使用一次有界 `HEAD -> worktree` 取证,但没有 immutable snapshot,因此最终 evidence status 始终为 `limited`;显式 Git range 由目标准备层固定 base/head,完整且无遗漏、workspace binding 为 matching_clean 时 evidence status 才可为 `complete`。Reviewer 不自行猜 ref,缺失、截断或预算耗尽必须进入覆盖说明,但不改写模型 recommendation。
- PR1 保留只读 Reviewer 现有的 `Git` 暴露以避免旧 PR/历史诊断场景先发生能力回退,但 prepared work packet 不把它作为 changed-code 证据,也不新增多操作 Git 工具。prepared target 只通过有界 `GetFileDiff` 消费目标 diff;只有本地仓库与目标 head 匹配且整个工作区干净时,现有 Read/Grep/Glob/LS 才补充 live context。不做逐工具全仓重验、任意 shell、fetch、checkout 或仓库状态写入。
- 显式严格审查扩大独立覆盖前展示单一 Review 方案确认,包括范围、计划 reviewer/调用数、耗时倾向和只读边界;不展示无法证明的 token 估算
- PR1 保留只读 Reviewer 现有的 `Git` 暴露以避免旧 PR/历史诊断场景先发生能力回退,但 prepared target evidence 不把它作为 changed-code 证据,也不新增多操作 Git 工具。prepared target 只通过有界 `GetFileDiff` 消费目标 diff;只有本地仓库与目标 head 匹配且整个工作区干净时,现有 Read/Grep/Glob/LS 才补充 live context。不做逐工具全仓重验、任意 shell、fetch、checkout 或仓库状态写入。
- 显式严格审查前展示单一 Review 方案确认,包括范围、一次计划主审、最多三次审查代理执行的硬上限、耗时倾向和只读边界;不估算底层模型请求或 token。
- 修复不新开第二套产品界面:同一 Review 侧栏先把选中项交给 `ReviewFixer`;“审核修复”能精确归因时按原审核文件与 Fixer 直接改动文件的并集重新统计和决策,命令型修改无法可靠归因时明确提示并回退当前工作区 diff,在同一侧栏位置切换到新的隔离 Review 子会话。Fixer 基线和选中项在修复前持久化;follow-up 预留、relationship metadata 和后端 session id 复用同一 request id。启动确认不确定时保留稳定 turn 和已创建子会话、显示明确提示,不自动或在重启后重发启动消息;侧栏显示进行中和查看结果,只有明确失败的操作才提供重试。旧会话缺少范围信息时采用同样的显式工作区回退。
- PR 面板是唯一内置 PR Review 入口:adapter 固定 provider identity、base/head 和按需远程 diff,启动同一套单 reviewer Review,并按精确 PR revision 投影进行中、结果和过期状态。已移除 PR Review MiniApp 及其独立强度和 AI 草稿路径;平台 CI/审批/mergeability 事实仍与 AI Review 建议分层。本轮不自动触发 Review,不生成或发布 inline comment,也不增加 approve、merge、checkout、缓存或 Finding 生命周期。

Expand Down Expand Up @@ -187,7 +187,7 @@ P3/P4 再按需补充队列阻塞率、工作流回退率、后续返工率和
| [product-requirements.md](product-requirements.md) | 继承快速开发、上下文保障、团队治理、执行安全和合规/发布路径 |
| [implementation-plan.md](implementation-plan.md) | 复用既有阶段路线,不新增 workflow 专属 P0-P4 |
| [architecture/agent-workflow-design.md](architecture/agent-workflow-design.md) | 仅作为交互和边界补充,不定义独立核心架构 |
| [../architecture/deep-review.md](../architecture/deep-review.md) | 仅在 L3 严格审查中复用 DeepReview 的 reviewer 队列、只读 reviewer 和 action surface;通用任务生命周期、scheduler 和队列状态归 Agent Kernel,Harness 只通过 provider/plan/step 参与编排 |
| [../architecture/deep-review.md](../architecture/deep-review.md) | 仅在 L3 严格审查中复用 DeepReview 主审、按需专家、历史队列兼容和 action surface;通用任务生命周期、scheduler 和队列状态归 Agent Kernel,Harness 只通过 provider/plan/step 参与编排 |
| [architecture/quality-data-plane.md](architecture/quality-data-plane.md) | 复用既有最小事件和指标口径,不新增 P0 默认事件 |

## 10. 参考资料
Expand Down
14 changes: 7 additions & 7 deletions docs/sdlc-harness/architecture/agent-workflow-design.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# BitFun 智能体工作流交互与边界补充设计

> 范围:为 [../agent-workflow-staged-plan.md](../agent-workflow-staged-plan.md) 中的场景提供交互和边界补充。
> 本文不定义新的 Agent Kernel、Harness、QDP 或 DeepReview 核心对象模型;实现时优先复用既有 session、task、Agent Kernel/Harness long-running queue、DeepReview manifest、work packets、runtime events 和质量数据面契约。
> 本文不定义新的 Agent Kernel、Harness、QDP 或 DeepReview 核心对象模型;实现时优先复用既有 session、task、Agent Kernel/Harness long-running queue、DeepReview manifest、runtime events 和质量数据面契约。历史 work packets 仅用于旧会话兼容

## 1. 设计定位

Expand All @@ -16,7 +16,7 @@
- 不定义新的 workflow DSL。
- 不定义新的 P0/P1/P2/P3/P4。
- 不定义新的持久化实体作为 P0/P1 前置。
- 不把多 reviewer 严格审查或任务控制台放入默认路径。
- 不把固定多 reviewer 严格审查或任务控制台放入默认路径。

## 2. 复用边界

Expand All @@ -42,12 +42,12 @@

## 4. Review 交互

Review 是用户唯一需要理解的审查入口。普通 Review 固定为一个只读 reviewer;显式 Strict Review 才复用 L3 DeepReview。用户不需要理解 DeepReview、subagent work packets。
Review 是用户唯一需要理解的审查入口。普通 Review 固定为一个只读 reviewer;显式 Strict Review 复用 L3 DeepReview,由主审直接完成更深检查并自行决定是否需要一次专家或条件质量检查。用户不需要理解 DeepReview、subagent 或历史 work packets。

入口兼容约束:

- `/DeepReview` 只作为迁移窗口内的历史兼容输入,等价路由到 “Review: Strict”,不作为高级别名、调试入口或长期产品入口。
- child sessionauxiliary panework packets 和内部 capacity queue 默认后台化;普通用户只看到统一 Review 面板。
- child sessionauxiliary pane 默认后台化;历史 work packets capacity queue 只服务旧会话兼容,普通用户只看到统一 Review 面板。
- 如果辅助 pane 因排障需要暴露,必须折叠到高级详情,并同步更新 DeepReview 架构文档,避免形成第二套产品入口。

| 强度 | 用户看到 | 默认限制 |
Expand All @@ -72,8 +72,8 @@ Review 面板只按问题呈现:

| 触发 | UI 行为 |
|---|---|
| 显式 Strict Review | 展示范围、计划 reviewer/调用数、并发或耗时倾向和只读边界;不估算 token |
| 需要多个 reviewer | 说明新增覆盖范围和运行时倾向,不承诺尚无可靠来源的成本数字 |
| 显式 Strict Review | 展示范围、一次计划主审、最多三次审查代理执行的硬上限、耗时倾向和只读边界;不估算底层模型请求或 token |
| 主审决定请求专家或质量检查 | 只在具体不确定性、高严重度、冲突或低置信度时发生,不提前承诺固定覆盖角色 |
| 需要并发 worker | 说明节省墙钟时间和冲突风险 |
| 预算接近上限 | 暂停扩大执行,给出追加预算、保留核心检查、只收敛已完成 |
| oracle 不可靠 | 停止扩大,改为人工确认或小样本建议 |
Expand All @@ -83,7 +83,7 @@ Review 面板只按问题呈现:
成本确认最低契约:

- 只有进入显式 L3 strict review、并发 worker、批量队列或长任务控制台时才弹出预算确认。
- 当前 Strict Review 确认展示范围、计划 reviewer/调用数、并发或耗时倾向和只读边界。Token 估算、启动前范围调整和停止选项尚未实现,不写成当前能力。
- 当前 Strict Review 确认展示范围、一次计划主审、最多三次审查代理执行的硬上限、耗时倾向和只读边界。底层模型请求与 Token 估算、启动前范围调整和停止选项尚未实现,不写成当前能力。
- 预算确认不能替代安全确认;执行位置、沙箱等级、写入范围、网络/凭据状态仍由安全边界提供。

## 6. 批量任务 GUI
Expand Down
4 changes: 2 additions & 2 deletions docs/sdlc-harness/design.md
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ Plugin Runtime Host(按需启用)
| 组织策略可强制 | 受管策略高于本地覆盖 |
| 模型输出作为候选 | 模型只能输出解释、摘要、风险或影响候选;策略改变和权威状态来自确定性证据、用户决策或受管策略 |
| Review 目标先于执行 | 当前修改、明确 Git range 和 provider PR 必须先形成带 revision、文件状态和完整度的只读目标证据;证据缺失只能降级,不能由 Reviewer 猜测或写成完整覆盖 |
| Reviewer Git 最小权限 | 保留既有 Reviewer Git 暴露以兼容旧入口,但 prepared work packet 不把它作为 changed-code 证据,也不新增 Git 工具或任意 shell;prepared target 只通过有界 `GetFileDiff` 消费变更。只有本地仓库与目标 head 匹配且整个工作区干净时,现有 Read/Grep/Glob/LS 才补充 live context;不做逐调用全仓扫描、网络、checkout 或仓库状态修改 |
| Reviewer Git 最小权限 | 保留既有 Reviewer Git 暴露以兼容旧入口,但 prepared target evidence 不把它作为 changed-code 证据,也不新增 Git 工具或任意 shell;prepared target 只通过有界 `GetFileDiff` 消费变更。只有本地仓库与目标 head 匹配且整个工作区干净时,现有 Read/Grep/Glob/LS 才补充 live context;不做逐调用全仓扫描、网络、checkout 或仓库状态修改 |
| 能力/效果模型统一 | tool、MCP、skills、插件、hook 和内置能力必须映射为能力声明、目标对象、数据类别、信任来源和副作用候选 |
| 未声明能力受限 | 新增扩展未声明能力、声明不完整或运行时行为超出声明时,只能进入受限模式或安全确认,不能按低风险静默执行 |
| 策略不写死工具名 | 策略引擎以能力、效果、数据、来源、执行域和配置上下文判定;工具名只用于展示、审计、兼容和调试 |
Expand All @@ -180,5 +180,5 @@ Plugin Runtime Host(按需启用)
| 工具复写静默越权 | 内置工具复写必须显式展示、按项目生效,并重新经过安全边界 |
| 图谱和证据过早显露 | 只在解释、PR、发布、事故时显性化 |
| Review 审错目标或复用过期结果 | base/head、目标指纹、完整度和 workspace binding 进入目标证据;head、diff 或绑定变化后旧结果只能作为历史引用,不能发布或支撑当前就绪度 |
| “只读 Git”仍产生副作用 | Reviewer 的既有 Git 暴露不扩权,prepared work packet 不将其作为 changed-code 证据;本地目标 diff 走禁用 external diff/textconv 的有界 `GetFileDiff`,provider PR diff 按文件读取并复核 base/head;普通 Agent 和旧 Review 保留既有行为;exact diff 不可用时明确降级或在 Reviewer 启动前停止 |
| “只读 Git”仍产生副作用 | Reviewer 的既有 Git 暴露不扩权,prepared target evidence 不将其作为 changed-code 证据;本地目标 diff 走禁用 external diff/textconv 的有界 `GetFileDiff`,provider PR diff 按文件读取并复核 base/head;普通 Agent 和旧 Review 保留既有行为;exact diff 不可用时明确降级或在 Reviewer 启动前停止 |
| 平均体验掩盖局部问题 | 指标按用户画像、任务风险、内部策略画像、用户可见视图、入口平台和受管状态切片 |
Loading
Loading