策划agent迁移到新路径,删除策划SuperVisor,简化门禁和校验 #272

Closed
lhk229 wants to merge 0 commits from feat/design_agent_simple into master
Owner
No description provided.
lhk229 added 2 commits 2026-09-03 15:30:10 +08:00
新增单 Agent PlanningSessionRuntime V2 的目标架构、状态、持久化和未来 MCP/Skill 兼容边界。

补充 P0-P5 阶段任务拆分、阶段目标、依赖和验收条件。

补充问询上限、Provider 失败、审批、恢复和旧链路强制退役的 BDD 场景。

明确 V2 切换时未完成旧 Supervisor 会话统一投影为 legacy_retired 失败,历史文件只读保留。

同步 docs README、文档地图和项目决策记录。
冻结策划会话 Runtime V2 P0 合同
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
e38edfb446
固定 Session、消息、回合结果、GDD 产物和审批记录的 V2 schema。

固定四个 V2 command、输入归一化和 questionLimit=8 语义。

固定 Provider adapter、ContextBuilder、能力快照及未来 MCP/Skill 扩展边界。

固定旧 Supervisor 链路 legacy-cutover 封存和未完成会话强制失败规则。

标记 P0 完成并同步项目决策记录。
lhk229 added a new dependency 2026-09-03 15:30:38 +08:00
lhk229 self-assigned this 2026-09-03 16:33:36 +08:00
lhk229 added 1 commit 2026-09-03 16:52:00 +08:00
Merge remote-tracking branch 'origin/master' into feat/design_agent_simple
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
d70f635eae
# Conflicts:
#	docs/project-memory/shared-memory/decision-log.md
kdletters requested changes 2026-09-03 16:54:47 +08:00
Dismissed
kdletters left a comment
Member

Genarrative PR #272 review(head sha: d70f635eae62b3a22d622cb8d0e3e1f55205c5d4)

本次审查覆盖 base d5e05d79fe 到当前 head 的完整 diff。变更仅涉及文档:新增 Runtime V2 方案,并更新文档索引与决策记录;未修改生产代码、配置或测试。已核对新增文档在 head 中存在、README/document-map 中的相对链接均可解析,且 git diff --check 通过。

未发现明确问题,批准合并。

Genarrative PR #272 review(head sha: d70f635eae62b3a22d622cb8d0e3e1f55205c5d4) 本次审查覆盖 base d5e05d79fed5af57f7afa44d2916992487aff0ed 到当前 head 的完整 diff。变更仅涉及文档:新增 Runtime V2 方案,并更新文档索引与决策记录;未修改生产代码、配置或测试。已核对新增文档在 head 中存在、README/document-map 中的相对链接均可解析,且 git diff --check 通过。 未发现明确问题,批准合并。
Member

Genarrative PR #272 审查(head sha: d70f635eae62b3a22d622cb8d0e3e1f55205c5d4)

结论:未发现明确问题。

审查范围:base d5e05d79fe → head d70f635eae 的完整 diff。此次变更仅涉及文档:新增策划会话 Runtime V2 方案,并更新 README、决策记录和文档地图;未修改生产代码、配置或测试。已确认新增文档存在,README/document-map 的相对链接均可解析,git diff --check 通过。

未发现需要行内指出的明确问题。

Genarrative PR #272 审查(head sha: d70f635eae62b3a22d622cb8d0e3e1f55205c5d4) 结论:未发现明确问题。 审查范围:base d5e05d79fed5af57f7afa44d2916992487aff0ed → head d70f635eae62b3a22d622cb8d0e3e1f55205c5d4 的完整 diff。此次变更仅涉及文档:新增策划会话 Runtime V2 方案,并更新 README、决策记录和文档地图;未修改生产代码、配置或测试。已确认新增文档存在,README/document-map 的相对链接均可解析,git diff --check 通过。 未发现需要行内指出的明确问题。
lhk229 added 2 commits 2026-09-03 18:19:19 +08:00
新增单 Agent GDD 策略、版本产物和审批命令

补齐问询计数、上下文进度和输出校验边界

注册 Planning V2 Tauri 命令并纳入私有产物路径

更新 Runtime V2 技术方案与项目决策记录
Merge branch 'master' into feat/design_agent_simple
Project CI / Repository checks (pull_request) Successful in 3m26s
Project CI / Frontend tests (pull_request) Successful in 4m1s
Project CI / Backend tests (pull_request) Successful in 6m33s
Project CI / Native shell tests (pull_request) Failing after 3m40s
4d33553466
lhk229 added 1 commit 2026-09-03 19:31:11 +08:00
接入策划会话 Runtime V2 入口与界面
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
059808d9e8
做方案入口改用 start/continue/decide_planning_session_v2 命令

新增 V2 Session、问题、GDD 和审批结果的前端适配层

接通 hydrate 会话历史、流式回复、问询卡、审批卡和处理耗时展示

保持做游戏、做素材及无 V2 旧项目读取路径不变

同步策划入口回归测试、Runtime V2 技术方案和项目决策记录
lhk229 added 1 commit 2026-09-03 19:32:26 +08:00
Merge branch 'master' into feat/design_agent_simple
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
eecd097117
lhk229 added 1 commit 2026-09-03 19:43:08 +08:00
Merge branch 'master' into feat/design_agent_simple
Project CI / Repository checks (pull_request) Successful in 2m18s
Project CI / Frontend tests (pull_request) Successful in 2m59s
Project CI / Backend tests (pull_request) Successful in 7m37s
Project CI / Native shell tests (pull_request) Successful in 20m49s
64105f8259
lhk229 added 3 commits 2026-09-04 16:04:34 +08:00
修复做方案首轮额外命名等待、处理中反馈和重复错误展示

补全 GDD 输出字段提示,避免模型生成非法 decisions 字段

统一 V2 assumption_pending 与 agent_inferred 语义并同步核心闭环问询策略

保持旧 Supervisor/V1 的 default_pending 与 default 语义不变

更新 Runtime V2 技术方案和项目决策记录
把当前 question/GDD 硬校验契约写入 V2 system prompt,不扩大校验范围或新增门禁

校验失败的一次重试改为列出具体阻断原因并要求逐项修复

同步 Runtime V2 技术方案和项目决策记录
精简策划 V2 提示词为形状和策略
Project CI / Backend tests (pull_request) Failing after 21s
Project CI / Repository checks (pull_request) Failing after 15s
Project CI / Frontend tests (pull_request) Successful in 2m54s
Project CI / Native shell tests (pull_request) Successful in 19m25s
67c2f85743
system prompt 只保留问询/GDD 骨架、同级字段边界和一行易错数量范围

去掉逐字段长度清单和 V1 编排残留说明,校验与重试路径不变

同步 Runtime V2 技术方案和项目决策记录
Member

Genarrative PR #272 审查(head sha: 67c2f85743b723f71c2e635929ce40e5f0e6af94)

发现 1 个明确问题(对应新侧文件 apps/ai-game-creator-shell/src-tauri/src/agent/runtime_protocol/planning_policy_v2.rs 第 989 行):Planning V2 在创建不可变 GDD 文件后,仍要依次更新 index、渲染 Markdown、追加 conversation 消息并写 session。如果这些后续步骤任一失败,run_turn_v2 会把 session 标记为 provider_failed,但已创建的 gdd.vN.json 不会回滚,且 session.current_artifact_version 仍指向旧版本。用户重试同一个回合时会再次计算相同的版本号,但由于新的 UUID/时间戳导致文件内容不同,create_v2_immutable_file 会命中“已存在且内容不同”并持续失败;hydrate 也看不到该孤儿 GDD,项目会卡在无法恢复的 provider_failed 状态。建议将 GDD、index、投影、conversation、session 的提交设计为可恢复事务(例如先写临时/准备记录并在恢复时完成或清理,或在检测到同版本孤儿文件时校验并复用其身份),并为“创建 GDD 后续持久化失败再重试/恢复”增加集成测试。

结论:request changes。

Genarrative PR #272 审查(head sha: 67c2f85743b723f71c2e635929ce40e5f0e6af94) 发现 1 个明确问题(对应新侧文件 apps/ai-game-creator-shell/src-tauri/src/agent/runtime_protocol/planning_policy_v2.rs 第 989 行):Planning V2 在创建不可变 GDD 文件后,仍要依次更新 index、渲染 Markdown、追加 conversation 消息并写 session。如果这些后续步骤任一失败,run_turn_v2 会把 session 标记为 provider_failed,但已创建的 gdd.vN.json 不会回滚,且 session.current_artifact_version 仍指向旧版本。用户重试同一个回合时会再次计算相同的版本号,但由于新的 UUID/时间戳导致文件内容不同,create_v2_immutable_file 会命中“已存在且内容不同”并持续失败;hydrate 也看不到该孤儿 GDD,项目会卡在无法恢复的 provider_failed 状态。建议将 GDD、index、投影、conversation、session 的提交设计为可恢复事务(例如先写临时/准备记录并在恢复时完成或清理,或在检测到同版本孤儿文件时校验并复用其身份),并为“创建 GDD 后续持久化失败再重试/恢复”增加集成测试。 结论:request changes。
kdletters requested changes 2026-09-04 16:13:07 +08:00
Dismissed
kdletters left a comment
Member

Genarrative PR #272 review(head sha: 67c2f85743b723f71c2e635929ce40e5f0e6af94)

结论:request changes。已在 PR 总评论 3468 中记录明确问题及修复建议;行内 review API 返回 422(jsontext unexpected EOF),因此使用总评论回写。

Genarrative PR #272 review(head sha: 67c2f85743b723f71c2e635929ce40e5f0e6af94) 结论:request changes。已在 PR 总评论 3468 中记录明确问题及修复建议;行内 review API 返回 422(jsontext unexpected EOF),因此使用总评论回写。
lhk229 added 1 commit 2026-09-04 18:13:51 +08:00
将策划 V2 输出从正文 JSON 改为协议工具
Project CI / Backend tests (pull_request) Failing after 14s
Project CI / Repository checks (pull_request) Failing after 14s
Project CI / Native shell tests (pull_request) Successful in 17m12s
Project CI / Frontend tests (pull_request) Successful in 3m43s
c1d967b17d
挂 plan_ask_question / plan_submit_gdd,tool_choice 固定 auto

删除正文 JSON 解析、骨架提示词和入参 schemaVersion 必填

形状改由工具 schema 承担,既有校验门禁与落盘 plan-gdd.v2 不变

同步技术方案、决策记录和 DeepSeek thinking 排障
lhk229 added 1 commit 2026-09-04 18:47:55 +08:00
修复策划 V2 孤儿 GDD 无法恢复
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
ca62243628
把 gdd.vN.json 创建成功当作提交点

persist、hydrate 与回合启动认领下一连续版本并补投影

重试不再用新 UUID 覆盖同一版本

补充孤儿认领与下一版本分配测试
lhk229 added 1 commit 2026-09-04 18:48:16 +08:00
Merge branch 'master' into feat/design_agent_simple
Project CI / Repository checks (pull_request) Successful in 3m27s
Project CI / Frontend tests (pull_request) Successful in 4m16s
Project CI / Backend tests (pull_request) Successful in 7m21s
Project CI / Native shell tests (pull_request) Successful in 18m19s
c454b22428
Member

Genarrative PR #272 审查(head sha: c454b22428d58cedaf6a031022466cf716a5781a)

结论:发现 1 个非阻塞问题。Planning V2 实时事件订阅被 planningV2Active 门控,但该状态仅在 start/continue invoke 返回后才设置;后端在 invoke 等待期间发布 started/delta,首轮所有流式事件因此丢失。对应新侧文件 apps/ai-game-creator-shell/src/App.tsx 第 1588 行。建议发送首个 turn 前建立订阅,并补充事件先于 invoke 返回的测试。已执行 cargo check、npm run typecheck,均通过;定向 cargo test 匹配到 0 个测试。

Genarrative PR #272 审查(head sha: c454b22428d58cedaf6a031022466cf716a5781a) 结论:发现 1 个非阻塞问题。Planning V2 实时事件订阅被 planningV2Active 门控,但该状态仅在 start/continue invoke 返回后才设置;后端在 invoke 等待期间发布 started/delta,首轮所有流式事件因此丢失。对应新侧文件 apps/ai-game-creator-shell/src/App.tsx 第 1588 行。建议发送首个 turn 前建立订阅,并补充事件先于 invoke 返回的测试。已执行 cargo check、npm run typecheck,均通过;定向 cargo test 匹配到 0 个测试。
kdletters reviewed 2026-09-04 18:55:25 +08:00
kdletters left a comment
Member

Genarrative PR #272 review(head sha: c454b22428d58cedaf6a031022466cf716a5781a)

Genarrative PR #272 review(head sha: c454b22428d58cedaf6a031022466cf716a5781a)
Member

Planning V2 的实时事件订阅被 planningV2Active 门控,但该状态只在 start/continue invoke 返回后才设置;后端在 invoke 等待期间发布 started/delta,首轮流式事件会全部丢失,实时回复实际失效。建议发送首个 turn 前建立订阅,并补充事件先于 invoke 返回的测试。

Planning V2 的实时事件订阅被 `planningV2Active` 门控,但该状态只在 start/continue invoke 返回后才设置;后端在 invoke 等待期间发布 started/delta,首轮流式事件会全部丢失,实时回复实际失效。建议发送首个 turn 前建立订阅,并补充事件先于 invoke 返回的测试。
lhk229 added 4 commits 2026-09-05 11:29:32 +08:00
删除 plan_submit_gdd Provider schema 中的 decisions[].id 和 prototypeValidationItems[].id

由 Runtime 生成 initial-request 与后续决定 ID,并绑定原型验证项

同步更新 Planning V2 技术方案和项目决策记录
将生产 V2 的 GDD 描述与原型统一为按字段填全且不增删改名

不改工作流、schema 或解析逻辑
保存 Planning V2 每次 Provider 尝试的请求、响应和解析分类产物

诊断写入不参与工作流、恢复、重试或 GDD 判断

同步 Planning V2 技术方案与项目决策记录
调整策划问询轮次提示
Project CI / Repository checks (pull_request) Successful in 2m27s
Project CI / Frontend tests (pull_request) Successful in 2m59s
Project CI / Native shell tests (pull_request) Failing after 6m11s
Project CI / Backend tests (pull_request) Successful in 5m58s
d1a8bed685
原型与生产 prompt 统一明确最多提问三轮

允许信息足够时提前出稿并补充重玩动力优先级

不改 Runtime 工作流、schema、校验和持久化逻辑
lhk229 added 2 commits 2026-09-05 14:10:22 +08:00
删除决策首项必须为 confirmed 且 round=0 的阻断校验

将 Runtime 的 oneLiner 实际接受范围调整为 10~160

将模型 schema 提示范围调整为 25~90 并记录有意不对称设计

修复 Planning V2 系统提示词参数占位符
将策划决策轮次交由Runtime管理
Project CI / Repository checks (pull_request) Successful in 4m24s
Project CI / Frontend tests (pull_request) Successful in 20m53s
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Failing after 13m28s
eabd8f393a
移除Provider输入中的 decisions.round 字段

由Runtime按决策顺序生成持久化轮次

放宽GDD实际门禁并同步模型数量上限
kdletters reviewed 2026-09-05 14:32:35 +08:00
kdletters left a comment
Member

Genarrative PR #272 review(head sha: eabd8f393ab27bcd1a2ef7c8be95934efc076c76)

Genarrative PR #272 review(head sha: eabd8f393ab27bcd1a2ef7c8be95934efc076c76)
Member

明确问题:Planning V2 的策略提示在 question_count >= 3 时无条件宣称已达到 3 轮并要求出稿(772-773、781-782、792 行),但同一实现的 question_limit 默认值为 8,运行时门禁也只在达到该 limit 时拒绝 question(run_turn_v2 的 question-limit 校验)。因此用户最多只能按模型提示得到 3 个问题,无法达到 UI/Session 所声明的 8 个有效问题,且提示在 3 个问题后与实际 Runtime 门禁不一致,可能导致模型提前生成质量不足的 GDD。建议统一单一配置来源:使用 session.question_limit 生成提示并在达到该值时才要求 plan_submit_gdd,同时补充 questionCount=3/8 的策略测试。

明确问题:Planning V2 的策略提示在 question_count >= 3 时无条件宣称已达到 3 轮并要求出稿(772-773、781-782、792 行),但同一实现的 question_limit 默认值为 8,运行时门禁也只在达到该 limit 时拒绝 question(run_turn_v2 的 question-limit 校验)。因此用户最多只能按模型提示得到 3 个问题,无法达到 UI/Session 所声明的 8 个有效问题,且提示在 3 个问题后与实际 Runtime 门禁不一致,可能导致模型提前生成质量不足的 GDD。建议统一单一配置来源:使用 session.question_limit 生成提示并在达到该值时才要求 plan_submit_gdd,同时补充 questionCount=3/8 的策略测试。
Author
Owner

假问题

假问题
lhk229 marked this conversation as resolved
lhk229 added 2 commits 2026-09-05 15:27:51 +08:00
明确模型侧 3 轮策略与 Runtime 侧 8 个问题门禁的分层语义

补充自动评测和代码评审口径,说明两者有意不对称
删除多余的测试
Project CI / Repository checks (pull_request) Failing after 52s
Project CI / Backend tests (pull_request) Successful in 5m53s
Project CI / Frontend tests (pull_request) Successful in 3m16s
Project CI / Native shell tests (pull_request) Successful in 17m5s
573940f1ad
lhk229 added 1 commit 2026-09-05 15:51:37 +08:00
修复 Rust 文件格式
Project CI / Repository checks (pull_request) Successful in 3m21s
Project CI / Frontend tests (pull_request) Successful in 4m4s
Project CI / Backend tests (pull_request) Successful in 7m38s
Project CI / Native shell tests (pull_request) Successful in 18m42s
ae700de1dd
删除 planning_session_v2.rs 末尾多余空行

通过 rustfmt、编码检查和 diff 检查
kdletters requested changes 2026-09-05 16:00:35 +08:00
Dismissed
kdletters left a comment
Member

Genarrative PR #272 review(head sha: 573940f1ada47e7617d3f1c427149906c0598958)

结论:request changes。规划 V2 的“实时事件”在 Provider 流式调用期间并未逐 delta 发出:invoke_provider_v2 的 stream 回调(planning_session_v2.rs 第 868-874 行)只更新 accumulated,run_turn_v2 要等 Provider 完成后才在第 1176-1186 行发送一次 delta 事件。因此前端在生成期间收不到任何增量,UI 的实时回复会一直空白,失去了流式交互;Provider 慢或输出较长时尤其明显。建议在 on_delta 回调中立即 emit 带当前 accumulatedText/deltaText 的事件(或让 invoke_provider_v2 接收并调用事件 emitter),并增加 mock stream 验证多个 delta 在完成前已发布的测试。

Genarrative PR #272 review(head sha: 573940f1ada47e7617d3f1c427149906c0598958) 结论:request changes。规划 V2 的“实时事件”在 Provider 流式调用期间并未逐 delta 发出:invoke_provider_v2 的 stream 回调(planning_session_v2.rs 第 868-874 行)只更新 accumulated,run_turn_v2 要等 Provider 完成后才在第 1176-1186 行发送一次 delta 事件。因此前端在生成期间收不到任何增量,UI 的实时回复会一直空白,失去了流式交互;Provider 慢或输出较长时尤其明显。建议在 on_delta 回调中立即 emit 带当前 accumulatedText/deltaText 的事件(或让 invoke_provider_v2 接收并调用事件 emitter),并增加 mock stream 验证多个 delta 在完成前已发布的测试。
Member

实时流式事件没有逐 delta 发布。此处的回调只更新本地 accumulated,直到 Provider 返回后 run_turn_v2 才统一 emit;前端因此在整个调用期间收不到增量。建议在回调中立即发出事件,并增加 mock stream 测试。head sha: 573940f1ad

实时流式事件没有逐 delta 发布。此处的回调只更新本地 accumulated,直到 Provider 返回后 run_turn_v2 才统一 emit;前端因此在整个调用期间收不到增量。建议在回调中立即发出事件,并增加 mock stream 测试。head sha: 573940f1ada47e7617d3f1c427149906c0598958
lhk229 marked this conversation as resolved
lhk229 added 1 commit 2026-09-05 16:12:10 +08:00
收口P4并关闭旧版策划入口
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
27246fbc5e
旧 project-supervisor-plan 来源统一返回退役错误

避免旧入口启动 Runtime 或 Provider

同步收口 P4 验收状态与最简 P5 方案

记录 V1 不迁移且历史文件只读保留
lhk229 added 1 commit 2026-09-05 16:17:23 +08:00
修正策划V2流式交互契约
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
b1456d9f11
明确用户交互以工具调用结果为准

取消逐 delta 投影的业务契约要求

同步技术方案与长期决策记录
lhk229 added 1 commit 2026-09-05 16:31:19 +08:00
修复策划V2问询交互与历史展示
Project CI / Repository checks (pull_request) Successful in 44m58s
Project CI / Frontend tests (pull_request) Successful in 45m27s
Project CI / Backend tests (pull_request) Failing after 48m47s
Project CI / Native shell tests (pull_request) Failing after 5m21s
d47928ceba
回答提交后立即收起当前问询卡

保留选项回答和完整选项描述到历史

补充 GDD 历史条目的一句话与决策摘要
lhk229 added 1 commit 2026-09-05 17:10:09 +08:00
修复策划Provider失败后的恢复状态
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
c03d1ef6fc
将 provider_failed 投影为可恢复的 failed 状态

让策划工作台显示重新启动入口
lhk229 added 1 commit 2026-09-05 17:12:04 +08:00
禁用策划V2失败重试入口
Project CI / Frontend tests (pull_request) Successful in 2m53s
Project CI / Native shell tests (pull_request) Successful in 18m26s
Project CI / Repository checks (pull_request) Successful in 2m29s
Project CI / Backend tests (pull_request) Successful in 6m6s
bd8e33eb60
Provider 失败时只展示错误信息

避免误调用通用 Supervisor 重试链路
lhk229 added 2 commits 2026-09-05 18:53:54 +08:00
审批 revise 后继续同一 V2 Session

避免修订意见重复写入历史

保留独立修订回合身份
修复新建项目锁误触发 Windows UAC
Project CI / Repository checks (pull_request) Failing after 15s
Project CI / Backend tests (pull_request) Failing after 16s
Project CI / Frontend tests (pull_request) Successful in 2m39s
Project CI / Native shell tests (pull_request) Successful in 17m50s
4127686e18
新建 sidecar 改为本进程收紧 DACL,不再因继承 ACE 自动提权。
项目锁先写入并释放独占句柄后再 harden,回读内容校验,不再对这把新锁走 prepare_for_read。
提权 ArgumentList 改为一条按 Windows 规则加引号的字符串,避免含空格路径被拆开。
补充含空格项目根取锁与 quoted ArgumentList 定向测试。
同步 ACL 提权边界、决策记录和排障记录。
Member

Genarrative PR #272 审查(head sha: 4127686e1857c929e9856f269b7fcb69934ff765)

结论:request changes。发现 1 个明确问题(阻塞合并)。

问题位置:apps/ai-game-creator-shell/src-tauri/src/agent/runtime_protocol/planning_session_v2.rs 新侧第 1032 行。Planning V2 的流式回调在 invoke_provider_v2 返回前只更新闭包里的 accumulated,没有向 emit 发布任何 delta;run_turn_v2 只能在 Provider 完成后(第 1176 行附近)一次性发送完整文本。因此前端在 Provider 运行期间收不到增量事件,planning-session-v2-stream 的实时回复会一直空白,长请求时表现为无响应,违背本次流式协议的实现目标。

建议:让 invoke_provider_v2on_delta 同时调用事件 emitter,在每个 Provider delta 到达时立即发布 status=deltadeltaTextaccumulatedText;并增加 mock stream 测试,断言完成前已收到多个 delta。

验证:cargo check --manifest-path apps/ai-game-creator-shell/src-tauri/Cargo.toml 通过;TypeScript typecheck 因工作区依赖缺失(react/vitest 等模块未安装)无法完成。git diff --check 通过。

Genarrative PR #272 审查(head sha: 4127686e1857c929e9856f269b7fcb69934ff765) 结论:request changes。发现 1 个明确问题(阻塞合并)。 问题位置:`apps/ai-game-creator-shell/src-tauri/src/agent/runtime_protocol/planning_session_v2.rs` 新侧第 1032 行。Planning V2 的流式回调在 `invoke_provider_v2` 返回前只更新闭包里的 `accumulated`,没有向 `emit` 发布任何 delta;`run_turn_v2` 只能在 Provider 完成后(第 1176 行附近)一次性发送完整文本。因此前端在 Provider 运行期间收不到增量事件,`planning-session-v2-stream` 的实时回复会一直空白,长请求时表现为无响应,违背本次流式协议的实现目标。 建议:让 `invoke_provider_v2` 的 `on_delta` 同时调用事件 emitter,在每个 Provider delta 到达时立即发布 `status=delta`、`deltaText` 和 `accumulatedText`;并增加 mock stream 测试,断言完成前已收到多个 delta。 验证:`cargo check --manifest-path apps/ai-game-creator-shell/src-tauri/Cargo.toml` 通过;TypeScript typecheck 因工作区依赖缺失(react/vitest 等模块未安装)无法完成。`git diff --check` 通过。
kdletters requested changes 2026-09-05 18:59:48 +08:00
Dismissed
kdletters left a comment
Member

Genarrative PR #272 审查(head sha: 4127686e1857c929e9856f269b7fcb69934ff765)

发现 1 个明确问题(阻塞合并):Planning V2 的流式回调在 invoke_provider_v2 返回前只更新闭包里的 accumulated,这里没有向 emit 发布任何 delta;run_turn_v2 只能在 Provider 完成后(第 1176 行附近)一次性发送完整文本。因此前端在 Provider 运行期间收不到增量事件,planning-session-v2-stream 的实时回复会一直空白,长请求时表现为无响应,违背本次流式协议的实现目标。

建议:让 invoke_provider_v2on_delta 同时调用事件 emitter,在每个 Provider delta 到达时立即发布 status=deltadeltaTextaccumulatedText;并增加 mock stream 测试,断言完成前已收到多个 delta。

Genarrative PR #272 审查(head sha: 4127686e1857c929e9856f269b7fcb69934ff765) 发现 1 个明确问题(阻塞合并):Planning V2 的流式回调在 `invoke_provider_v2` 返回前只更新闭包里的 `accumulated`,这里没有向 `emit` 发布任何 delta;`run_turn_v2` 只能在 Provider 完成后(第 1176 行附近)一次性发送完整文本。因此前端在 Provider 运行期间收不到增量事件,`planning-session-v2-stream` 的实时回复会一直空白,长请求时表现为无响应,违背本次流式协议的实现目标。 建议:让 `invoke_provider_v2` 的 `on_delta` 同时调用事件 emitter,在每个 Provider delta 到达时立即发布 `status=delta`、`deltaText` 和 `accumulatedText`;并增加 mock stream 测试,断言完成前已收到多个 delta。
@@ -0,0 +1029,4 @@
&debug_call_id,
&attempt_prompt,
start.context_messages.clone(),
|all, _delta, _finish_reason| {
Member

Genarrative PR #272 审查(head sha: 4127686e1857c929e9856f269b7fcb69934ff765)

发现 1 个明确问题(阻塞合并):Planning V2 的流式回调在 invoke_provider_v2 返回前只更新闭包里的 accumulated,这里没有向 emit 发布任何 delta;run_turn_v2 只能在 Provider 完成后(第 1176 行附近)一次性发送完整文本。因此前端在 Provider 运行期间收不到增量事件,planning-session-v2-stream 的实时回复会一直空白,长请求时表现为无响应,违背本次流式协议的实现目标。

建议:让 invoke_provider_v2on_delta 同时调用事件 emitter,在每个 Provider delta 到达时立即发布 status=deltadeltaTextaccumulatedText;并增加 mock stream 测试,断言完成前已收到多个 delta。

Genarrative PR #272 审查(head sha: 4127686e1857c929e9856f269b7fcb69934ff765) 发现 1 个明确问题(阻塞合并):Planning V2 的流式回调在 `invoke_provider_v2` 返回前只更新闭包里的 `accumulated`,这里没有向 `emit` 发布任何 delta;`run_turn_v2` 只能在 Provider 完成后(第 1176 行附近)一次性发送完整文本。因此前端在 Provider 运行期间收不到增量事件,`planning-session-v2-stream` 的实时回复会一直空白,长请求时表现为无响应,违背本次流式协议的实现目标。 建议:让 `invoke_provider_v2` 的 `on_delta` 同时调用事件 emitter,在每个 Provider delta 到达时立即发布 `status=delta`、`deltaText` 和 `accumulatedText`;并增加 mock stream 测试,断言完成前已收到多个 delta。
lhk229 marked this conversation as resolved
lhk229 changed title from WIP: 策划agent迁移到新路径,删除策划SuperVisor,简化门禁和校验,并为未来接入skill、mcp、多轮对话做兼容 to WIP: 策划agent迁移到新路径,删除策划SuperVisor,简化门禁和校验 2026-09-05 19:49:23 +08:00
lhk229 added 1 commit 2026-09-05 19:49:31 +08:00
Merge branch 'master' into feat/design_agent_simple
Project CI / Repository checks (pull_request) Successful in 2m16s
Project CI / Frontend tests (pull_request) Successful in 3m0s
Project CI / Backend tests (pull_request) Successful in 7m26s
Project CI / Native shell tests (pull_request) Successful in 21m24s
6cc70af0a5
lhk229 added 3 commits 2026-09-05 19:49:57 +08:00
V2 审批、续跑、落盘、失败投影和 GDD 认领改为完整等待窗口
V2 hydrate 改为短窗口等待
前端 V2 hydrate 忽略瞬时锁争用
补充审批、续跑、hydrate 锁等待测试
同步决策、踩坑和技术方案
统一解析回合结果与持久化历史中的问题结构

恢复历史消息中的问题正文、选项标签和选项说明
Merge branch 'feat/design_agent_simple' of ssh://genarrative-station:2222/GenarrativeAI/Genarrative into feat/design_agent_simple
Project CI / Frontend tests (pull_request) Successful in 3m20s
Project CI / Repository checks (pull_request) Successful in 2m51s
Project CI / Backend tests (pull_request) Successful in 6m11s
Project CI / Native shell tests (pull_request) Successful in 21m46s
d3a7070bb4
Member

Genarrative PR #272 审查(head sha: 6cc70af0a5ebefbc01b257a993dad1c53600353b)

结论:request changes。发现 1 个明确问题(阻塞合并)。

问题位置:apps/ai-game-creator-shell/src-tauri/src/agent/runtime_protocol/planning_session_v2.rs 新侧第 870 行附近。Planning V2 的 stream_run 回调在 Provider 运行期间只更新 on_delta 接收的数据;run_turn_v2 直到 invoke_provider_v2 返回后才在第 1176-1186 行发布一次 status=delta。因此前端在生成期间收不到任何增量事件,长请求时实时回复会一直空白,流式协议失效。

建议:让 on_delta 在每次 Provider delta 到达时直接触发 emit,传递当前 accumulatedTextdeltaTextfinishReason;并增加 mock stream 测试,断言 Provider 完成前已收到多个 delta。

行内 review API 已尝试但返回 HTTP 422(jsontext unexpected EOF),因此使用本条 PR 总评论回写。

Genarrative PR #272 审查(head sha: 6cc70af0a5ebefbc01b257a993dad1c53600353b) 结论:request changes。发现 1 个明确问题(阻塞合并)。 问题位置:`apps/ai-game-creator-shell/src-tauri/src/agent/runtime_protocol/planning_session_v2.rs` 新侧第 870 行附近。Planning V2 的 `stream_run` 回调在 Provider 运行期间只更新 `on_delta` 接收的数据;`run_turn_v2` 直到 `invoke_provider_v2` 返回后才在第 1176-1186 行发布一次 `status=delta`。因此前端在生成期间收不到任何增量事件,长请求时实时回复会一直空白,流式协议失效。 建议:让 `on_delta` 在每次 Provider delta 到达时直接触发 `emit`,传递当前 `accumulatedText`、`deltaText` 和 `finishReason`;并增加 mock stream 测试,断言 Provider 完成前已收到多个 delta。 行内 review API 已尝试但返回 HTTP 422(jsontext unexpected EOF),因此使用本条 PR 总评论回写。
kdletters requested changes 2026-09-05 19:55:17 +08:00
Dismissed
kdletters left a comment
Member

Genarrative PR #272 review(head sha: 6cc70af0a5ebefbc01b257a993dad1c53600353b)

Genarrative PR #272 review(head sha: 6cc70af0a5ebefbc01b257a993dad1c53600353b)
kdletters requested changes 2026-09-05 19:56:08 +08:00
Dismissed
kdletters left a comment
Member

Genarrative PR #272 审查(head sha: d3a7070bb4a53e97ffa5ad7a66d94d3ae9a67350)

结论:request changes。发现 2 个明确问题,均会影响策划 V2 的实际行为。

  1. Planning V2 的流式事件没有逐增量发出:invoke_provider_v2 的 Provider 回调(planning_session_v2.rs 第 852 行)只更新 accumulated,没有调用外层 emit;因此 run_turn_v2 只能在 Provider 返回后才在第 997 行附近一次性发送 delta。长时间请求期间前端不会收到任何实时内容,表现为无响应,违背流式交互目标。建议在每个 Provider delta 到达时立即 emit status=deltadeltaTextaccumulatedText,并增加 mock stream 测试验证完成前收到多个 delta。

  2. 问题上限实现与本 PR 的 V2 合同不一致:new_session_v2question_limit 初始化为 8(planning_session_v2.rs 第 571 行),但 planning_v2_question_policyquestion_count >= 3 时就强制要求提交 GDD,system prompt 也明确写“整个会话最多提问 3 轮”(planning_session_v2.rs 第 590-610 行)。所以只要模型连续提出第 4 个合法问题,模型会被提前强制出稿,用户最多只能进行 3 个问题;这直接违反本 PR 文档/验收中“最多 8 个有效问题、可展示第 8 个问题”的行为。建议统一为 question_limit=8 的策略(或把实际产品上限改为 3 并同步所有合同、UI 和测试),并增加覆盖第 4~8 个问题的测试。

Genarrative PR #272 审查(head sha: d3a7070bb4a53e97ffa5ad7a66d94d3ae9a67350) 结论:request changes。发现 2 个明确问题,均会影响策划 V2 的实际行为。 1. Planning V2 的流式事件没有逐增量发出:`invoke_provider_v2` 的 Provider 回调(planning_session_v2.rs 第 852 行)只更新 `accumulated`,没有调用外层 `emit`;因此 `run_turn_v2` 只能在 Provider 返回后才在第 997 行附近一次性发送 delta。长时间请求期间前端不会收到任何实时内容,表现为无响应,违背流式交互目标。建议在每个 Provider delta 到达时立即 emit `status=delta`、`deltaText` 和 `accumulatedText`,并增加 mock stream 测试验证完成前收到多个 delta。 2. 问题上限实现与本 PR 的 V2 合同不一致:`new_session_v2` 将 `question_limit` 初始化为 8(planning_session_v2.rs 第 571 行),但 `planning_v2_question_policy` 在 `question_count >= 3` 时就强制要求提交 GDD,system prompt 也明确写“整个会话最多提问 3 轮”(planning_session_v2.rs 第 590-610 行)。所以只要模型连续提出第 4 个合法问题,模型会被提前强制出稿,用户最多只能进行 3 个问题;这直接违反本 PR 文档/验收中“最多 8 个有效问题、可展示第 8 个问题”的行为。建议统一为 question_limit=8 的策略(或把实际产品上限改为 3 并同步所有合同、UI 和测试),并增加覆盖第 4~8 个问题的测试。
@@ -0,0 +587,4 @@
}
fn existing_turn_result_v2(
messages: &[PlanningMessageV2],
Member

阻塞问题:这里把问询策略硬编码为 3 轮,但 new_session_v2question_limit 是 8,导致第 4 个合法问题不会再被允许;这违反本 PR 规定的“最多 8 个有效问题/第 8 个问题可展示”。请统一策略与合同并补第 4~8 个问题测试。

阻塞问题:这里把问询策略硬编码为 3 轮,但 `new_session_v2` 的 `question_limit` 是 8,导致第 4 个合法问题不会再被允许;这违反本 PR 规定的“最多 8 个有效问题/第 8 个问题可展示”。请统一策略与合同并补第 4~8 个问题测试。
Author
Owner

假问题,门禁允许的上限不代表生成范式要的上限,别再提出这个问题了。

假问题,门禁允许的上限不代表生成范式要的上限,别再提出这个问题了。
lhk229 marked this conversation as resolved
@@ -0,0 +849,4 @@
provider_attempt: u8,
debug_call_id: &str,
prompt: &str,
context_messages: Vec<platform_llm::LlmMessage>,
Member

阻塞问题:Provider 的流式回调只更新闭包中的 accumulated,没有向 emit 发布 delta。run_turn_v2 只能在 Provider 完成后一次性发送完整文本,长请求期间前端收不到 planning-session-v2-stream 增量,表现为无响应。建议在每个 delta 到达时立即发送 status=deltadeltaTextaccumulatedText,并补 mock stream 测试。

阻塞问题:Provider 的流式回调只更新闭包中的 `accumulated`,没有向 `emit` 发布 delta。`run_turn_v2` 只能在 Provider 完成后一次性发送完整文本,长请求期间前端收不到 `planning-session-v2-stream` 增量,表现为无响应。建议在每个 delta 到达时立即发送 `status=delta`、`deltaText`、`accumulatedText`,并补 mock stream 测试。
lhk229 marked this conversation as resolved
Author
Owner

Genarrative PR #272 审查(head sha: 6cc70af0a5ebefbc01b257a993dad1c53600353b)

结论:request changes。发现 1 个明确问题(阻塞合并)。

问题位置:apps/ai-game-creator-shell/src-tauri/src/agent/runtime_protocol/planning_session_v2.rs 新侧第 870 行附近。Planning V2 的 stream_run 回调在 Provider 运行期间只更新 on_delta 接收的数据;run_turn_v2 直到 invoke_provider_v2 返回后才在第 1176-1186 行发布一次 status=delta。因此前端在生成期间收不到任何增量事件,长请求时实时回复会一直空白,流式协议失效。

建议:让 on_delta 在每次 Provider delta 到达时直接触发 emit,传递当前 accumulatedTextdeltaTextfinishReason;并增加 mock stream 测试,断言 Provider 完成前已收到多个 delta。

行内 review API 已尝试但返回 HTTP 422(jsontext unexpected EOF),因此使用本条 PR 总评论回写。

已增强文档澄清,只是支持流式响应,不代表用户得到流式体验。

> Genarrative PR #272 审查(head sha: 6cc70af0a5ebefbc01b257a993dad1c53600353b) > > 结论:request changes。发现 1 个明确问题(阻塞合并)。 > > 问题位置:`apps/ai-game-creator-shell/src-tauri/src/agent/runtime_protocol/planning_session_v2.rs` 新侧第 870 行附近。Planning V2 的 `stream_run` 回调在 Provider 运行期间只更新 `on_delta` 接收的数据;`run_turn_v2` 直到 `invoke_provider_v2` 返回后才在第 1176-1186 行发布一次 `status=delta`。因此前端在生成期间收不到任何增量事件,长请求时实时回复会一直空白,流式协议失效。 > > 建议:让 `on_delta` 在每次 Provider delta 到达时直接触发 `emit`,传递当前 `accumulatedText`、`deltaText` 和 `finishReason`;并增加 mock stream 测试,断言 Provider 完成前已收到多个 delta。 > > 行内 review API 已尝试但返回 HTTP 422(jsontext unexpected EOF),因此使用本条 PR 总评论回写。 已增强文档澄清,只是支持流式响应,不代表用户得到流式体验。
lhk229 added 1 commit 2026-09-05 20:00:10 +08:00
澄清策划V2流式事件契约
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
267c085b57
明确 Provider 流式传输属于底层实现能力

明确 text_delta 是 Runtime 内部事件而非前端业务事件

明确用户可见结果以结构化工具调用为准

补充文档措辞约束避免误读
kdletters requested changes 2026-09-05 20:05:41 +08:00
Dismissed
kdletters left a comment
Member

PR #272 review(head sha: 267c085b57fe30ed828b394b5bbb186401485010)

结论:request changes。详见 PR 总评论。

PR #272 review(head sha: 267c085b57fe30ed828b394b5bbb186401485010) 结论:request changes。详见 PR 总评论。
Author
Owner

}
fn existing_turn_result_v2(
messages: &[PlanningMessageV2],
kdletters commented 4 minutes ago
Owner
阻塞问题:这里把问询策略硬编码为 3 轮,但 new_session_v2 的 question_limit 是 8,导致第 4 个合法问题不会再被允许;这违反本 PR 规定的“最多 8 个有效问题/第 8 个问题可展示”。请统一策略与合同并补第 4~8 个问题测试。
lhk229 commented now
Author
Member
假问题,门禁允许的上限不代表生成范式要的上限,别再提出这个问题了。
lhk229 marked this conversation as resolved
apps/ai-game-creator-shell/src-tauri/src/agent/runtime_protocol/planning_session_v2.rs
@@ -0,0 +849,4 @@
provider_attempt: u8,
debug_call_id: &str,
prompt: &str,
context_messages: Vec<platform_llm::LlmMessage>,
kdletters commented 4 minutes ago
Owner
阻塞问题:Provider 的流式回调只更新闭包中的 accumulated,没有向 emit 发布 delta。run_turn_v2 只能在 Provider 完成后一次性发送完整文本,长请求期间前端收不到 planning-session-v2-stream 增量,表现为无响应。建议在每个 delta 到达时立即发送 status=delta、deltaText、accumulatedText,并补 mock stream 测试。
注意这两个问题是假问题,不准再提

} fn existing_turn_result_v2( messages: &[PlanningMessageV2], kdletters commented 4 minutes ago Owner 阻塞问题:这里把问询策略硬编码为 3 轮,但 new_session_v2 的 question_limit 是 8,导致第 4 个合法问题不会再被允许;这违反本 PR 规定的“最多 8 个有效问题/第 8 个问题可展示”。请统一策略与合同并补第 4~8 个问题测试。 lhk229 commented now Author Member 假问题,门禁允许的上限不代表生成范式要的上限,别再提出这个问题了。 lhk229 marked this conversation as resolved apps/ai-game-creator-shell/src-tauri/src/agent/runtime_protocol/planning_session_v2.rs @@ -0,0 +849,4 @@ provider_attempt: u8, debug_call_id: &str, prompt: &str, context_messages: Vec<platform_llm::LlmMessage>, kdletters commented 4 minutes ago Owner 阻塞问题:Provider 的流式回调只更新闭包中的 accumulated,没有向 emit 发布 delta。run_turn_v2 只能在 Provider 完成后一次性发送完整文本,长请求期间前端收不到 planning-session-v2-stream 增量,表现为无响应。建议在每个 delta 到达时立即发送 status=delta、deltaText、accumulatedText,并补 mock stream 测试。 注意这两个问题是假问题,不准再提
lhk229 added 2 commits 2026-09-05 20:17:54 +08:00
失败时清理已创建的空文件或截断文件

保留已有文件的幂等与内容冲突校验
Merge branch 'master' into feat/design_agent_simple
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
e87cb98d3e
lhk229 marked the pull request as ready for review 2026-09-05 20:18:38 +08:00
lhk229 requested review from kdletters 2026-09-05 20:25:28 +08:00
lhk229 added 1 commit 2026-09-05 20:31:24 +08:00
修复策划V2错误结果展示
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
90eae50dd3
展示后端返回的错误回合结果

在缺少会话错误摘要时回填运行时错误
lhk229 added 1 commit 2026-09-05 20:52:17 +08:00
清理策划V2无效停止状态
Project CI / Repository checks (pull_request) Successful in 2m31s
Project CI / Frontend tests (pull_request) Successful in 2m54s
Project CI / Backend tests (pull_request) Successful in 6m2s
Project CI / Native shell tests (pull_request) Successful in 18m15s
4efa39420f
移除没有生产写入路径的 stopped 会话状态

同步清理前端恢复状态映射
lhk229 added 1 commit 2026-09-06 16:48:49 +08:00
清理策划V2已退役停止状态
Project CI / Repository checks (pull_request) Successful in 3m34s
Project CI / Frontend tests (pull_request) Successful in 4m21s
Project CI / Backend tests (pull_request) Successful in 7m56s
Project CI / Native shell tests (pull_request) Successful in 20m50s
49d814fec1
删除 Planning V2 认领逻辑中的 stopped 死分支。
同步技术方案中的状态枚举和状态转移描述。
lhk229 added 1 commit 2026-09-06 17:51:16 +08:00
放宽策划V2修订续跑合同
Project CI / Repository checks (pull_request) Failing after 15s
Project CI / Backend tests (pull_request) Failing after 15s
Project CI / Frontend tests (pull_request) Successful in 3m10s
Project CI / Native shell tests (pull_request) Successful in 17m23s
7d54aa6552
允许审批修改后的 continuation 继续问询或直接提交完整 GDD

明确继承已确认问答与问询计数且不新增意图识别调用
kdletters requested changes 2026-09-06 19:40:06 +08:00
kdletters left a comment
Member

审查结论:request changes。apps/ai-game-creator-shell/src-tauri/src/agent/runtime_protocol/planning_session_v2.rs:1031-1042 的 invoke_provider_v2 回调只更新 run_turn_v2 闭包中的 accumulated;run_turn_v2 直到 Provider 返回后才在 :1183-1193 发送一次 status=delta。因此启用流式 Provider 时,生成期间不会发出任何 planning-session-v2-stream 增量,前端长请求一直没有实时文本,流式协议失效。请在每次 on_delta 到达时立即 emit accumulatedText/deltaText/finishReason,并增加 mock stream 测试断言 Provider 完成前已收到多个 delta。当前 PR 还与 master 存在冲突,CI 也未通过,请先 rebase/resolve 后再复审。

审查结论:request changes。apps/ai-game-creator-shell/src-tauri/src/agent/runtime_protocol/planning_session_v2.rs:1031-1042 的 invoke_provider_v2 回调只更新 run_turn_v2 闭包中的 accumulated;run_turn_v2 直到 Provider 返回后才在 :1183-1193 发送一次 status=delta。因此启用流式 Provider 时,生成期间不会发出任何 planning-session-v2-stream 增量,前端长请求一直没有实时文本,流式协议失效。请在每次 on_delta 到达时立即 emit accumulatedText/deltaText/finishReason,并增加 mock stream 测试断言 Provider 完成前已收到多个 delta。当前 PR 还与 master 存在冲突,CI 也未通过,请先 rebase/resolve 后再复审。
lhk229 marked the pull request as work in progress 2026-09-06 20:22:21 +08:00
Author
Owner

#242 合入后存在bug须修复

#242 合入后存在bug须修复
lhk229 added 4 commits 2026-09-07 13:16:50 +08:00
- 合入 AGC 官方 LLM Router 账号链路与流式联网输出(#242)
- 新增后台模型别名与对话选择能力及 AGC 模型目录
- 解决 ProjectSupervisorView.tsx 与 decision-log.md 冲突
- planning_session_v2 请求 toolChoice 由 Auto 改为 Required,消除模型跳过 plan_ask_question/plan_submit_gdd 而把 JSON 写进正文导致的 PLANNING_INVALID_OUTPUT 失败
策划会话瞬态Provider故障自动退避重试
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
df6d885d2c
- invoke_provider_v2 错误携带主 Runtime 同款瞬态分类,timeout/connectivity/transport/空响应/反序列化/断流/上游408、429、5xx 不再直接判死
- run_turn_v2 对瞬态故障按 maxRetries 预算指数退避自动重试本回合,耗尽后才投 provider_failed 并附已重试次数,上游 4xx 硬错误仍直接失败
- 同步策划会话 Runtime V2 文档:tool_choice 口径改为 required,补充瞬态故障重试规则
lhk229 marked the pull request as ready for review 2026-09-07 13:19:51 +08:00
lhk229 added 2 commits 2026-09-07 15:33:49 +08:00
- final reply 请求捕获改用 wait_for_captured_mock_request 10 秒轮询预算,取代手写 recv_timeout 2 秒,消除持久化动作批次管线开销导致的单测 flaky
- 收尾等待改用 wait_for_agent_runtime_terminal_and_lane_release,确认 lane 释放、不留僵尸 worker
- 批量并行跑时的跨测试污染为既有系统性问题,本次不处理
注明思考模式模型不支持tool_choice=required
Project CI / Backend tests (pull_request) Failing after 10s
Project CI / Frontend tests (pull_request) Successful in 3m15s
Project CI / Native shell tests (pull_request) Successful in 20m38s
Project CI / Repository checks (pull_request) Failing after 15s
0ff2c00618
- planning_session_v2 的 Required 设置处补注释:DeepSeek 等思考模式模型会以 400 拒绝该取值,接入新模型需先验证端点支持
- 策划会话 Runtime V2 文档重试规则节补充该限制及其与瞬态重试的边界
lhk229 added 1 commit 2026-09-07 15:34:34 +08:00
Merge branch 'master' into feat/design_agent_simple
Project CI / Repository checks (pull_request) Failing after 59s
Project CI / Frontend tests (pull_request) Successful in 3m10s
Project CI / Backend tests (pull_request) Successful in 6m9s
Project CI / Native shell tests (pull_request) Successful in 21m10s
b5d214cef8
lhk229 added 1 commit 2026-09-07 15:40:33 +08:00
软化tool_choice兼容性表述为可能不支持
Project CI / Repository checks (pull_request) Failing after 44s
Project CI / Frontend tests (pull_request) Successful in 3m9s
Project CI / Backend tests (pull_request) Successful in 7m23s
Project CI / Native shell tests (pull_request) Successful in 21m20s
85de37710b
- 代码注释与策划会话文档改为“部分模型或端点可能不支持”,DeepSeek 仅作示例
kdletters added 1 commit 2026-09-07 17:16:27 +08:00
Merge branch 'master' into feat/design_agent_simple
Project CI / Frontend tests (pull_request) Successful in 3m9s
Project CI / Backend tests (pull_request) Successful in 6m31s
Project CI / Repository checks (pull_request) Failing after 1m6s
Project CI / Native shell tests (pull_request) Successful in 19m54s
29fa20e68d
kdletters requested changes 2026-09-07 18:05:30 +08:00
kdletters left a comment
Member

This was generated by AI during triage.

请求修改(当前 head 29fa20e68d4e3601f8699ffab146a590fffbc779)。

Planning V2 的 Provider 流式回调仍只更新 run_turn_v2 闭包里的 accumulated,run_turn_v2 直到 Provider 返回后才发送一次 status=delta。启用流式 Provider 时,生成期间前端收不到增量,长请求会一直没有实时文本,流式协议没有真正生效;当前 Repository checks 也失败。

请让每次 on_delta 到达时立即 emit status=delta、deltaText、accumulatedText 和 finishReason,并增加 mock stream 回归测试,断言 Provider 完成前已经收到多个增量事件。

> *This was generated by AI during triage.* 请求修改(当前 head 29fa20e68d4e3601f8699ffab146a590fffbc779)。 Planning V2 的 Provider 流式回调仍只更新 run_turn_v2 闭包里的 accumulated,run_turn_v2 直到 Provider 返回后才发送一次 status=delta。启用流式 Provider 时,生成期间前端收不到增量,长请求会一直没有实时文本,流式协议没有真正生效;当前 Repository checks 也失败。 请让每次 on_delta 到达时立即 emit status=delta、deltaText、accumulatedText 和 finishReason,并增加 mock stream 回归测试,断言 Provider 完成前已经收到多个增量事件。
@@ -0,0 +1079,4 @@
&debug_call_id,
&attempt_prompt,
start.context_messages.clone(),
|all, _delta, _finish_reason| {
Member

This was generated by AI during triage.

这里的 on_delta 只把 accumulated 更新到闭包变量,_delta 和 _finish_reason 被丢弃;因此 Provider stream_run 回调期间没有任何 planning-session-v2-stream 事件发出。请在回调内直接调用 emit(或把 emitter 传入 invoke_provider_v2),并用 mock stream 断言完成前收到多个 delta。

> *This was generated by AI during triage.* 这里的 on_delta 只把 accumulated 更新到闭包变量,_delta 和 _finish_reason 被丢弃;因此 Provider stream_run 回调期间没有任何 planning-session-v2-stream 事件发出。请在回调内直接调用 emit(或把 emitter 传入 invoke_provider_v2),并用 mock stream 断言完成前收到多个 delta。
Author
Owner

策划agent根本不允许纯文本输出,流式不流式没有意义。

策划agent根本不允许纯文本输出,流式不流式没有意义。
lhk229 marked this conversation as resolved
lhk229 added 2 commits 2026-09-07 18:35:48 +08:00
- planning_session_v2.rs 的 config 加载与 tool_planning.rs 的 final_request 捕获合并为单行
Merge remote-tracking branch 'origin/feat/design_agent_simple' into feat/design_agent_simple
Project CI / Repository checks (pull_request) Successful in 3m10s
Project CI / Frontend tests (pull_request) Successful in 3m24s
Project CI / Backend tests (pull_request) Successful in 6m45s
Project CI / Native shell tests (pull_request) Successful in 19m25s
0fde1912f1
lhk229 closed this pull request 2026-09-07 19:29:05 +08:00
lhk229 deleted branch feat/design_agent_simple 2026-09-07 19:35:18 +08:00
Some checks are pending
Project CI / Repository checks (pull_request) Successful in 3m10s
Project CI / Frontend tests (pull_request) Successful in 3m24s
Project CI / Backend tests (pull_request) Successful in 6m45s
Project CI / Native shell tests (pull_request) Successful in 19m25s

Pull request closed

Sign in to join this conversation.