收口P4并关闭旧版策划入口
旧 project-supervisor-plan 来源统一返回退役错误 避免旧入口启动 Runtime 或 Provider 同步收口 P4 验收状态与最简 P5 方案 记录 V1 不迁移且历史文件只读保留
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
# 策划会话 Runtime V2 接入与旧链路退役方案
|
||||
|
||||
- 日期:2026-09-03
|
||||
- 状态:P0 合同冻结、P1 内核、P2 产物闭环和 P3 入口/UI 接入已完成;P4~P5 待实施;本文是新生产实现的目标方案与阶段验收合同
|
||||
- 状态:P0 合同冻结、P1 内核、P2 产物闭环、P3 入口/UI 接入和 P4 灰度回归验收已完成;P5 待实施;本文是新生产实现的目标方案与阶段验收合同
|
||||
- 适用范围:AGC 桌面 App 的“做方案”入口、策划会话、GDD 产物与审批
|
||||
|
||||
> 本文规定新策划 Agent 的生产接入和旧链路退役方式。P3 开始修改正式 AGC 入口与工作台,但旧 `project-supervisor-plan` / `project-planning` 源码仍保留,直到 P5 完成退役;V2 切换时旧链路直接封存,所有未完成旧会话强制失败,旧 Fast GDD 文档之后只作为历史记录依据。
|
||||
@@ -735,11 +735,11 @@ hydrate_planning_session_v2
|
||||
- 前端通过 V2 适配层复用现有聊天区、澄清卡、GDD 审批卡和阶段进度条;V2 Session 的 hydrate 结果额外携带 `conversation`,用于刷新/重启恢复历史消息。
|
||||
- 监听 `planning-session-v2-stream`,将 Provider 回合的增量投影到现有实时回复区域;旧 Runtime 轮询、专业 Agent 轮询和旧 Runtime 事件在 V2 策划会话中关闭。
|
||||
- 对已存在 V2 Session 的项目,打开项目时先 hydrate V2;没有 V2 authority 的旧项目继续走旧读取路径,避免误把旧项目数据当成 V2。
|
||||
- P3 已完成;旧会话 `legacy_retired` 封存、入口彻底关闭和真实 Provider/UI 全链路回归仍属于 P4/P5。
|
||||
- P3 已完成;P4 的真实 Provider、前端工作台、失败恢复和安全门禁验收已通过。旧会话 `legacy_retired` 封存与旧入口彻底关闭仍属于 P5。
|
||||
|
||||
P3 之后的协议修正:V2 不再用正文 JSON 输出问询/GDD;Provider 请求挂 `plan_ask_question` / `plan_submit_gdd`,`tool_choice=auto`,形状由工具 schema 承担。system prompt 只保留三项核心闭环等策略和当前问询进度;数量和字数由既有校验器在失败时回灌。`plan_submit_gdd` 的工具参数只包含决定和原型验证内容,不包含任何 Runtime 分配的 ID;Runtime 在落盘前为决定分配首项 `initial-request`、后续 `decision-{序号}`,并按 `prototype_pending` 顺序绑定原型验证项。入参不必回声 `schemaVersion`,落盘 GDD 仍写 `plan-gdd.v2`。失败结果不重复渲染,严格解析和失败不落盘成功产物的规则保持不变。历史 V2 数据不做兼容转换,按现有恢复/失败策略处理。
|
||||
|
||||
### P4:灰度、真实 Provider 与回归验收
|
||||
### P4:灰度、真实 Provider 与回归验收(已完成)
|
||||
|
||||
目标:证明 V2 的正常路径和关键失败路径可用,再关闭旧入口新建能力。
|
||||
|
||||
@@ -761,9 +761,11 @@ P3 之后的协议修正:V2 不再用正文 JSON 输出问询/GDD;Provider
|
||||
- 证实同一项目不存在两个活跃策划权威;旧活跃会话在切换后不可继续。
|
||||
- 所有失败均保留可操作状态,不以成功文案掩盖 Provider/持久化错误。
|
||||
|
||||
阶段结果:已完成人工灰度验收,包含正常提问/回答/GDD/批准链路、GDD 修改与再次批准链路、Provider 失败恢复、非法输出失败边界、重启恢复、前端展示和编码/差异门禁。P4 不包含旧链路退役;旧链路封存和入口关闭在 P5 执行。
|
||||
|
||||
依赖:P3。
|
||||
|
||||
### P5:旧链路退役
|
||||
### P5:旧链路退役(最简方案)
|
||||
|
||||
目标:停止新业务进入旧 Supervisor,并将所有未完成旧会话一次性封存为失败。
|
||||
|
||||
@@ -771,18 +773,18 @@ P3 之后的协议修正:V2 不再用正文 JSON 输出问询/GDD;Provider
|
||||
|
||||
| ID | 任务 | 产出 |
|
||||
| ---- | ---------------------------------------------------- | -------------------------------- |
|
||||
| P5-1 | 关闭新建和继续旧 `project-supervisor-plan` 的 caller | 入口门禁/路由变更 |
|
||||
| P5-2 | 执行旧 session 一次性封存 | `legacy-cutover.json` 与失败投影 |
|
||||
| P5-3 | 保留旧产物只读展示,禁止旧交互继续推进 | 历史查看能力 |
|
||||
| P5-4 | 更新生产文档和运维说明 | 旧链路退役状态、回滚边界 |
|
||||
| P5-1 | 关闭旧 `project-supervisor-plan` 新建/继续入口 | 入口统一返回退役错误 |
|
||||
| P5-2 | 旧活跃会话自动失败 | 入口拒绝后不启动旧 Runtime/Provider |
|
||||
| P5-3 | 保留旧产物只读 | 不迁移、不修复、不删除旧文件 |
|
||||
| P5-4 | 更新生产文档和最小回归测试 | 旧入口拒绝、V2 目录隔离 |
|
||||
|
||||
阶段验收:
|
||||
|
||||
- 代码搜索和运行时审计均证明新“做方案”不再调用 `start_game_creator_supervisor_runtime_task`。
|
||||
- 新项目不会创建旧 Supervisor root、child Run、delivery 或 acceptance evidence。
|
||||
- 已存在的旧活跃会话全部投影为 `legacy_retired` 失败;已终态旧产物仍可查看。
|
||||
- 旧入口或旧 continuation 若被直接调用,返回稳定的“旧链路已退役”错误,不删除旧数据。
|
||||
- 切换前已在途的旧 Provider 迟到结果不会写入 GDD、审批或 `game/fast_gdd.md`。
|
||||
- 旧入口或旧 continuation 若被直接调用,返回稳定的“旧链路已退役”错误,不启动旧 Runtime 或 Provider。
|
||||
- 旧文件和已终态旧产物保持原样,继续只读查看;不引入旧 Session schema 迁移。
|
||||
- V2 hydrate 和审批只读取 `.agent/planning-v2`,不读取旧目录。
|
||||
- 做游戏 DirectProject 和其它现役 Agent Runtime 不受影响。
|
||||
|
||||
依赖:P4 通过;确认切换窗口并完成一次性封存。
|
||||
|
||||
Reference in New Issue
Block a user