dev-manager-tauri/docs/tasks/2026-09-23-blueprint-agent-handoff-pilot.md
lanrtop 8f3be6b948
All checks were successful
Push & PR Check / check (push) Successful in 1m57s
docs(blueprint): 回收 9-23 草稿有效部分并落定管家方向设计简报
- api-keys:按现状改为 Credential Manager 存储(R2/R3/R6 已完成)
- manifest:补 project-resource-broker 两条依赖边
- notes-archive:补 R1 复盘
- blueprint-governance:指向 handoff-pilot 待议证据包
- docs/tasks:handoff-pilot(含蓝图规则并入能力包目标)+ dev-variables 落地增量提案

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 11:48:32 +09:00

67 lines
11 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.

# 蓝图规则安全派发与 Agent 分工试点
> status: todo | complexity: L | created: 2026-09-23 | blueprint: blueprint-governance(待确认新迭代或独立模块)
> ⚠️ 处置条款:本文件 done 后 24h 内删除;稳定结论沉淀到蓝图决策与复盘,不让简报成为第二事实来源。
> 类型:Feature / 工作流行为变更。开工前按 AGENTS.md 输出 L 级确认卡,用户确认设计后再拆 S/M 任务卡。本次仅保存讨论,尚未确认实施或修改规则。
## 为什么(压缩背景 + 证据)
- 来源讨论:`codex://threads/01a0c8e3-56a6-79a0-b3f8-0fb3322746b2` 提议强模型规划、经济模型执行。该任务可读取的核心回复确认 Codex 支持不同模型的子 Agent 配置,但蓝图复杂度驱动的完整工作流并非原生一键能力;其后数轮正文当时未能读取,勿假定整段会话已核验。官方参考:https://learn.chatgpt.com/docs/agent-configuration/subagents 。
- 当前共识:默认单 Agent 端到端;仅当任务边界清楚、子任务独立、验收可执行且规划成果可复用时试拆分。比较总耗时、使用量、返工、漏验和人工介入,不以单次模型价格判断收益;复杂度单一字段不足以判断风险。
- 炼境负责版本化蓝图基线、派发、自检、采集执行信号;子项目拥有业务规格、项目规则、测试和交付决策。见 `AGENTS.md:5`、`AGENTS.md:287`、`docs/ai-context/agent-button-system.md:162`。Enterprise 新功能规格唯一来源是 `E:/code-project/enterprise-system/AGENTS.md:122` 指向的 `.specify/specs/.../spec.md`,蓝图应引用而非复制。
- 安全派发的实锤阻碍:`src-tauri/src/commands/blueprint.rs:1434` 的 `save_user_conventions` 保存后自动遍历所有项目同步;`:1291` 的 `sync_blueprint_rules` 直接整文件写入项目 `.blueprint/CONVENTIONS.md`,并更新 `AGENTS.md` / `CLAUDE.md` 托管块。当前行为不能安全地“先炼境、再单个 Enterprise 试点、最后推广”。
- 状态语义需收敛:`.blueprint/CONVENTIONS.md:25` 说 in_progress/done 由 Git 信号推断,同文件 `:50` 又要求任务卡标 🔵/✅。Git/CI 应给事实证据,Agent 负责完成语义判断,人负责目标终验。`src-tauri/src/commands/blueprint.rs:1191` 的 `synced` 主要依据规则版本及 manifest 时间,不能证明蓝图与代码一致。
- 现有 MCP `src-tauri/src/mcp_tools.rs:27` 可读蓝图,`:38` 可读项目文件;不必先造调度服务。`get_blueprint` 在 `src-tauri/src/commands/blueprint.rs:304` 读路径中追加 usage 快照,可能产生 Git 工作区噪声,应列为治理时的分离候选。
- Enterprise 已有双层验收实例:`E:/code-project/enterprise-system/.blueprint/modules/enterprise-company.md:29` 的 T3 分列 SQL `agent_verify` 和页面 `human_verify`,适合作为任务卡契约样本,但生产 migration 不应成为低成本模型试验任务。
- 2026-09-23 后续讨论澄清了“蓝图”的目标:它不只是静态架构图或模型路由表,更是持续记录方向、任务安排、阻碍、执行反馈和下一步的**项目工作账本**;炼境是持有账本并为开发 Agent 提供上下文、环境诊断和受限能力的经纪人/管家。人保留目标定义与终验,读过代码的 Agent 保留实现和完成语义判断,炼境负责协调与采集信号。
- 这不等于把 `.blueprint/` 全部搬入炼境:项目业务规则、已确认的架构决策、验收契约须随 Git 分支/worktree 与代码同行;日常安排、可重建统计、跨项目索引和按任务提取的上下文更适合由炼境提供。Enterprise 当前 `.blueprint/modules/` 有 101 个文件,`manifest.yaml` 约 43 KB、`CONVENTIONS.md` 约 46 KB、`usage.json` 约 611 KB;`usage.json` 会产生工作区噪声。可用 `Get-Item .blueprint/manifest.yaml,.blueprint/CONVENTIONS.md,.blueprint/usage.json | Select-Object Name,Length` 和 `(Get-ChildItem .blueprint/modules -File | Measure-Object).Count` 复核,不应让新会话每次通读全部材料。
- 可验证的收益假设:炼境按当前 project_id、分支/worktree 和任务交付“少而准”的任务简报(目标、相关规则/文件、依赖、可执行验收、现有证据、阻碍及可调用能力),Agent 独立定位、实施、自验后回传证据;与现有方式对照人工解围次数、上下文量、完成至终验耗时、漏验/返工。方向有潜力,尚无实测收益,不能宣称已实现。
## 改什么(按依赖顺序,非已批准任务卡)
- [ ] ⛔ 先向用户提交 L 级设计确认卡,确定本工作是 `blueprint-governance` 新迭代还是独立模块;确认前不改蓝图基线、不派发 Enterprise。
- [ ] 设计安全派发:保存草稿与项目同步解耦,提供目标项目与差异预览;先单项目试点,再显式批量推广。先审 `src-tauri/src/commands/blueprint.rs`、`src-tauri/src/mcp_tools.rs`、`src/lib/commands.ts`、设置/蓝图 UI。
- 2026-09-30 补充目标:**蓝图规则并入能力包范式**——登记为 `capability-packs.json` 中的版本化 pack(如 `blueprint-baseline`,含 `self_check` / `upgrade_hint`),从整文件覆盖 `CONVENTIONS.md` 改为托管块,与接入包、工具链包同一套机制(依据 AGENTS.md「管家准入与退出」的「分发 vs 查询」)。
- 同时瘦身分发内容:子项目只留稳定最小核心(状态语义、任务契约格式、复杂度流程)+ 指向 MCP 按需取详细章节的指针;`usage.json` 等可重建数据移出项目 Git,由炼境持有。
- [ ] 统一 `.blueprint/CONVENTIONS.md` 中任务状态、`synced` 状态、可执行验收、风险/升级条件和模型无关角色表述;维护版本与兼容旧项目。项目任务卡不写死模型名。
- [ ] 设计蓝图信息归属与同步契约:区分炼境的动态工作账本/跨项目视图与项目 Git 中随分支变化的业务决策/验收事实;定义 project_id + 分支/worktree + 任务的定位方式、过期/冲突提示,以及炼境不可用时直接读项目文件的降级路径。先设计,不迁移现有 Enterprise 蓝图。
- [ ] 设计最小任务简报的按需读取与回执:Agent 只取本任务相关上下文、能力入口和未验项;回执包含实际验证证据、阻碍与人工终验待办,不能仅凭 Git/CI 信号自动标 ✅。优先复用现有 `get_project_blueprint`、`get_project_file` 和项目能力工具,不先造完整调度器。
- [ ] 在炼境自己的真实任务卡自测规则;再于 Enterprise 的干净隔离分支/worktree 指定项目试点。先检查 Git 工作区与派发 diff,保留托管块外内容、`.blueprint/rules.md`、spec 和现有业务任务。
- [ ] 先用 Enterprise 与一个轻量项目的低风险真实任务测试“任务简报 → Agent 定位/自验 → 证据回执”,记录接入至首次验证时间、人工解围次数、上下文量、返工和漏验;再在边界稳定的任务上比较单 Agent 与分工模式的总耗时和用量。用失败案例收窄规则;只有效果稳定才考虑结构化任务包/模型建议产品化。
## 不做什么(边界 + 已否决方案)
- 不把蓝图 `complexity` 直接映射为模型名——文件数和任务尺寸不等于数据库、权限、生产风险;模型选择留在 Codex/Claude adapter 与当前会话,可被人覆盖。
- 不一开始建设炼境自动派发/执行调度器——现有读取入口已足够试跑,调度和多 Agent 交接成本尚无收益证据。
- 不通过保存规则立即广播所有项目;不覆盖 Enterprise 主工作区既有改动;不自动执行 migration、合并或部署。
- 不把 Enterprise `.specify` 业务规格再复制进蓝图;蓝图只维护结构、执行拆解、验证证据指针。
- 本次试点暂不把项目蓝图的版本化事实源整体移入炼境数据库,也不让生产项目运行依赖炼境在线——否则分支/worktree 与蓝图可能错位,项目离开平台难以独立开发。可重建统计和任务视图可以中心化,但须可追溯来源并提供导出/降级;长期归属仍待设计确认与实测。
- 不把炼境做成自动裁决代码质量或业务优先级的“上级 Agent”;它是管家与协调者。凭证只通过受限能力按需代办,不把原文、整份 `.env`、生产 SSH/DB 权限塞进任务简报;凭证代理若成为试点,先审计现有 API Key/Gitea Token 暴露边界,另行确认安全设计。
## 验收
agent_verify(方案获确认、实施后):
- `[Rust test] 预览项目 A 的蓝图规则升级 → 返回目标版本与差异;项目文件字节不变`。
- `[Rust test] 保存用户版规则草稿 → 所有已注册项目文件字节不变;显式同步项目 A → 项目 B 字节不变,项目 A 的非托管内容与私有规则不变`。
- `[CLI] 在炼境与 Enterprise 试点工作区分别检查派发前后 Git diff → 仅预期托管文件变化;未触及已有未提交内容`。
- `[任务试跑记录] 每张卡可追溯单/分工模式、验收路径、未验项、返工与人工介入;不足数据明确标为未验证,不宣称节省`。
- `[任务简报对照] Enterprise 与轻量项目各选一张低风险卡 → Agent 只读取相关规则/文件即可定位并复述验收路径;简报标明 project_id、分支/worktree、证据来源,切换分支后不得沿用旧分支的任务事实`。
- `[降级与噪声] 关闭炼境后 Agent 仍能从项目文件取得业务规则与验收契约;仅查询/查看任务不应新增无关 Git 改动;简报与回执均不含凭证原文`。
human_verify(实施后):
- `[UI] 预览差异 → 选择 Enterprise 试点项目 → 明确确认派发 → 能看到目标版本与自检结果;批量推广需另行显式操作`。
- `Enterprise 会话从项目自己的 spec/蓝图任务卡独立完成一次低风险任务,并由人确认意图与页面结果`。
## 关联(指针,不复制)
- 炼境:`AGENTS.md`、`.blueprint/CONVENTIONS.md`、`.blueprint/modules/blueprint-governance.md`、`.blueprint/modules/blueprint-flywheel.md`、`docs/ai-context/agent-button-system.md`。
- Enterprise:`E:/code-project/enterprise-system/AGENTS.md`、`E:/code-project/enterprise-system/.blueprint/modules/enterprise-company.md`、适用的 `.specify/specs/.../spec.md`。
- 蓝图事实与现有入口:`src-tauri/src/commands/blueprint.rs:244`、`src-tauri/src/mcp_tools.rs:27`、`E:/code-project/enterprise-system/.blueprint/manifest.yaml`、`E:/code-project/enterprise-system/.blueprint/CONVENTIONS.md`。
- Codex 官方模型与子 Agent 文档:https://learn.chatgpt.com/docs/model-selection 、https://learn.chatgpt.com/docs/agent-configuration/subagents 。
## 新会话启动方式
先读本文件及其关联指针,核对最新 Git 状态和同步代码;不要重做已完成的讨论。优先澄清“动态工作账本 vs 项目版本化事实”的归属与最小任务简报,再审安全派发和模型分工,避免把三者一次性实现。先输出 L 级设计确认卡并等待用户确认,再标本简报 `in_progress`、拆 S/M 卡,按 checklist 逐阶段实施与验收。完成后按处置条款清理本简报。