suzmii
bb1df3c6da
Merge remote-tracking branch 'origin/master' into feat/jenkins-mac-build
...
Project CI / AI game creator shell Rust shard 1/4 (pull_request) Failing after 11s
Project CI / AI game creator shell Rust shard 2/4 (pull_request) Failing after 11s
Project CI / AI game creator shell Rust shard 3/4 (pull_request) Failing after 11s
Project CI / AI game creator shell Rust shard 4/4 (pull_request) Failing after 12s
Project CI / AI game creator shell Rust smoke (pull_request) Failing after 12s
Project CI / AI game creator shell Rust crates (pull_request) Failing after 11s
Project CI / Backend tests (pull_request) Failing after 11s
Project CI / Native shell tests (pull_request) Failing after 14s
Project CI / Frontend tests (pull_request) Failing after 6s
Project CI / Repository checks (pull_request) Failing after 13s
Project CI / AI game creator shell web tests (pull_request) Failing after 12s
# Conflicts:
# docs/technical/【技术方案】AGC客户端更新检查与下载-2026-08-31.md
2026-09-20 17:45:38 +08:00
kdletters
5822b64d7c
合并 Godot 编辑器插件与常用操作指导到主分支
...
接入 Godot 原生桥、受控执行、Runner 回执与编辑器操作指南
保留主分支 Cocos 和 Unity 跨工程能力及外置提示词结构
解决插件生命周期、工具目录、前端启动和文档合并冲突
2026-09-20 17:38:48 +08:00
suzmii
1e17d2c852
补齐画布验收第一批:润色回包提示、未提交草稿恢复与派生名预检
...
Project CI / AI game creator shell Rust shard 1/4 (pull_request) Successful in 7m44s
Project CI / AI game creator shell Rust shard 2/4 (pull_request) Successful in 7m57s
Project CI / AI game creator shell Rust shard 3/4 (pull_request) Successful in 5m44s
Project CI / Backend tests (pull_request) Failing after 16s
Project CI / AI game creator shell Rust shard 4/4 (pull_request) Successful in 5m53s
Project CI / AI game creator shell Rust smoke (pull_request) Successful in 2m21s
Project CI / Repository checks (pull_request) Failing after 12s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 2m27s
Project CI / Frontend tests (pull_request) Successful in 7m4s
Project CI / AI game creator shell web tests (pull_request) Successful in 6m22s
Project CI / Native shell tests (pull_request) Successful in 10m13s
AI 润色回包与原文相同时给出明确提示,不再落下点了等于没点的「恢复原文」假入口
润色「与原文相同」的判据改为规范化之后要写回宿主的文本,回包被长度上限截回原文同样算没变化
共享聊天输入区显示润色提示,并让提示随用户手改提示词失效
快速编辑未提交草稿改按资源路径归属,收起面板或被旁路重投影后都不再静默丢掉
恢复入口按路径与本会话草稿对号,并区分「本会话未提交」与原生账本条目
账本读取失败时入口仍报出本会话草稿条数,「继续编辑」重开面板回填提示词与 @ 引用
派生资源名预检接入快速编辑与角色动画两条提交路径,早于正规化写盘
名称预检自身抛错时回写面板失败态,不再留下「点了没反应」的提交按钮
浮层关闭判定改在捕获阶段冻结,避免浮层内按钮卸载自己时整块面板被自己人收掉
恢复入口动作按钮收进统一容器,补移动端纵向排布与禁用态样式
空草稿表改工厂函数,跨语言对表用例按模块路径解析 Rust 源码
补回归用例:旁路重投影后的草稿、原样回包提示、提交前名称拦截、草稿表读写与跨卡隔离
同步 decision-log 与画布验收待办的进展说明
2026-09-20 17:36:02 +08:00
suzmii
e230d9dc32
Merge pull request '升级 Rust toolchain 至 1.98.1' ( #432 ) from chore/rust-toolchain-1-98 into master
...
Project CI / AI game creator shell Rust shard 1/4 (push) Failing after 12s
Project CI / AI game creator shell Rust shard 2/4 (push) Failing after 11s
Project CI / AI game creator shell Rust shard 3/4 (push) Failing after 11s
Project CI / AI game creator shell Rust shard 4/4 (push) Failing after 13s
Project CI / AI game creator shell Rust smoke (push) Failing after 20s
Project CI / AI game creator shell Rust crates (push) Failing after 28s
Project CI / Backend tests (push) Failing after 26s
Project CI / Frontend tests (push) Failing after 9s
Project CI / Native shell tests (push) Failing after 20s
Project CI / Repository checks (push) Failing after 22s
Project CI / AI game creator shell web tests (push) Failing after 25s
Reviewed-on: #432
2026-09-20 17:35:17 +08:00
suzmii
b10a2d5d79
Merge branch 'master' into chore/rust-toolchain-1-98
Project CI / AI game creator shell Rust shard 1/4 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust shard 2/4 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust shard 3/4 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust shard 4/4 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust smoke (pull_request) Has been cancelled
Project CI / AI game creator shell Rust crates (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / AI game creator shell web tests (pull_request) Has been cancelled
2026-09-20 17:35:09 +08:00
kdletters
b96473836d
补齐 Unity 与 Godot 常用操作指导
...
新增两种编辑器的内置 Skill 和场景、资源、UI、保存撤销示例
接入 DirectProject 按需读取与 Runtime 同源操作参考
补齐指南原文实机测试、安装投影及工具说明完整性检查
记录 Godot 图形补验结果并保留尚未验收的边界
2026-09-20 17:26:34 +08:00
suzmii
a35cdcc68c
同步 CI 镜像 tag 与文档口径,并补上工具链一致性护栏
...
Project CI / AI game creator shell Rust shard 1/4 (pull_request) Failing after 17s
Project CI / AI game creator shell Rust shard 2/4 (pull_request) Failing after 11s
Project CI / AI game creator shell Rust shard 3/4 (pull_request) Failing after 14s
Project CI / AI game creator shell Rust shard 4/4 (pull_request) Failing after 12s
Project CI / AI game creator shell Rust smoke (pull_request) Failing after 11s
Project CI / AI game creator shell Rust crates (pull_request) Failing after 10s
Project CI / Backend tests (pull_request) Failing after 10s
Project CI / Native shell tests (pull_request) Failing after 10s
Project CI / Frontend tests (pull_request) Failing after 5s
Project CI / Repository checks (pull_request) Failing after 11s
Project CI / AI game creator shell web tests (pull_request) Failing after 11s
- 将 CI job 镜像默认 tag 从 genarrative/gitea-project-ci:20260807.1 升为 20260920.1
- 将 Dockerfile 两处 org.opencontainers.image.version 统一为 2026.09.20.1(原先一处 2026.07.23.1、一处 2026.08.07.1,后写的覆盖先写的)
- 同步 deploy/container/README.md 与开发运维文档中的镜像归档示例名
- 订正 pitfalls.md 中 CI 镜像的 Rust 版本,并记录 number_of_links 在 1.98.1 上实测仍未稳定
- 在 decision-log.md 追加本次 Rust 工具链升级到 1.98.1 的决策条目
- 在 scripts/project-ci-workflow.test.ts 新增一致性用例:镜像版本段、digest 与 tag 必须与 rust-toolchain.toml 及两份运维文档一致
2026-09-20 17:06:49 +08:00
kdletters
37189c9252
记录项目主模型使用历史并补录旧项目
...
Project CI / AI game creator shell Rust shard 3/4 (push) Failing after 7m38s
Project CI / AI game creator shell Rust shard 2/4 (push) Failing after 7m40s
Project CI / AI game creator shell Rust shard 4/4 (push) Failing after 7m45s
Project CI / AI game creator shell Rust shard 1/4 (push) Failing after 8m27s
Project CI / AI game creator shell Rust smoke (push) Successful in 2m24s
Project CI / AI game creator shell Rust crates (push) Successful in 3m8s
Project CI / Repository checks (push) Successful in 7m53s
Project CI / Frontend tests (push) Successful in 8m48s
Project CI / Native shell tests (push) Successful in 11m14s
Project CI / Backend tests (push) Successful in 12m54s
Project CI / AI game creator shell web tests (push) Successful in 5m53s
在项目 .agent 中保存请求模型与响应确认型号,区分目录标识和真实模型
为旧项目补录带来源标记的模型信息,保留历史并确保重复打开幂等
在 Direct Codex 代理中提取模型元数据,异步落盘且不阻塞响应转发
补充模型追溯边界测试并同步技术方案与团队约定
2026-09-20 17:02:44 +08:00
kdletters
54d0fb75ea
接入 Godot 编辑器插件与受控执行链路
...
新增 GDExtension 自动引导、GDScript 执行和实例隔离缓存
接入 AGC 插件开关、Runner、Agent 工具与权限审计
完善执行回执确认、不确定状态阻断及卸载恢复
补齐 Windows 分发资源、定向测试与实机验收文档
2026-09-20 16:35:04 +08:00
suzmii
e1c8edd6bf
Merge remote-tracking branch 'origin/master' into fix/rust-toolchain-1-98
Project CI / AI game creator shell Rust shard 4/4 (pull_request) Failing after 19s
Project CI / AI game creator shell Rust shard 1/4 (pull_request) Failing after 19s
Project CI / AI game creator shell Rust shard 2/4 (pull_request) Failing after 19s
Project CI / AI game creator shell Rust shard 3/4 (pull_request) Failing after 19s
Project CI / AI game creator shell Rust smoke (pull_request) Failing after 17s
Project CI / Backend tests (pull_request) Failing after 18s
Project CI / Native shell tests (pull_request) Failing after 18s
Project CI / AI game creator shell Rust crates (pull_request) Failing after 18s
Project CI / Frontend tests (pull_request) Failing after 7s
Project CI / AI game creator shell web tests (pull_request) Failing after 11s
Project CI / Repository checks (pull_request) Failing after 12s
2026-09-20 15:59:17 +08:00
suzmii
8a3daff55b
升级 Rust 工具链到 1.98.1
...
- 将 rust-toolchain.toml 的 channel 从 1.96.0 提升到 1.98.1,保留 rustfmt 组件要求
- 将 CI job 镜像 Rust stage 从 rust:1.96-bookworm 更新为 rust:1.98-bookworm,并同步新的固定镜像 digest
- 同步 deploy/container/README.md 中 Rust 版本与 digest 的说明
- 同步开发运维文档中 CI 环境与 rust-toolchain.toml 的版本口径为 1.98.1
2026-09-20 15:59:07 +08:00
kdletters
97d8a6c39a
清理并统一外置智能体提示词
...
Project CI / AI game creator shell Rust shard 4/4 (push) Failing after 7m34s
Project CI / AI game creator shell Rust shard 2/4 (push) Failing after 7m42s
Project CI / AI game creator shell Rust shard 3/4 (push) Failing after 7m43s
Project CI / AI game creator shell Rust shard 1/4 (push) Failing after 8m1s
Project CI / AI game creator shell Rust smoke (push) Successful in 1m58s
Project CI / AI game creator shell Rust crates (push) Successful in 3m9s
Project CI / Backend tests (push) Successful in 12m4s
Project CI / Frontend tests (push) Successful in 11m37s
Project CI / Native shell tests (push) Successful in 15m37s
Project CI / Repository checks (push) Successful in 13m51s
Project CI / AI game creator shell web tests (push) Successful in 6m52s
将智能体系统指令、工具说明和恢复模板集中到外置提示词目录
精简重复否定、历史对照与无关实现说明,保留必要执行约束
扩展提示词构建校验和源码边界检查并接入现有本地与持续集成门禁
同步内置技能、协作规范、技术文档与对应验证断言
2026-09-20 15:32:48 +08:00
lhk229
70271b408e
删除策划agent v2,与退役功能解耦 ( #355 )
...
Project CI / AI game creator shell Rust shard 1/4 (push) Successful in 7m19s
Project CI / AI game creator shell Rust shard 3/4 (push) Successful in 7m35s
Project CI / AI game creator shell Rust shard 4/4 (push) Successful in 7m34s
Project CI / AI game creator shell Rust shard 2/4 (push) Successful in 7m39s
Project CI / AI game creator shell Rust smoke (push) Successful in 2m13s
Project CI / AI game creator shell Rust crates (push) Successful in 3m18s
Project CI / Backend tests (push) Successful in 9m16s
Project CI / Repository checks (push) Successful in 8m11s
Project CI / Native shell tests (push) Successful in 11m56s
Project CI / Frontend tests (push) Successful in 11m49s
Project CI / AI game creator shell web tests (push) Successful in 6m37s
Reviewed-on: #355
Co-authored-by: Linghong <ink29535@proton.me >
Co-committed-by: Linghong <ink29535@proton.me >
2026-09-20 14:49:57 +08:00
kdletters
623e007fae
完善客户端发布渠道并接入模板库灰度
...
Project CI / AI game creator shell Rust shard 2/4 (push) Successful in 7m36s
Project CI / AI game creator shell Rust shard 3/4 (push) Successful in 7m37s
Project CI / AI game creator shell Rust shard 4/4 (push) Successful in 7m42s
Project CI / AI game creator shell Rust shard 1/4 (push) Successful in 7m51s
Project CI / AI game creator shell Rust smoke (push) Successful in 1m55s
Project CI / AI game creator shell Rust crates (push) Successful in 4m15s
Project CI / Repository checks (push) Successful in 4m45s
Project CI / Frontend tests (push) Successful in 7m47s
Project CI / Native shell tests (push) Successful in 9m33s
Project CI / Backend tests (push) Successful in 10m9s
Project CI / AI game creator shell web tests (push) Successful in 4m38s
区分发布渠道与系统,支持 dev、release 和自定义渠道
允许网站通过服务端配置选择客户端下载检测渠道
接入模板库灰度权限并阻断退出和切号后的异步操作
补齐发布、下载、灰度与会话竞态测试及当前规范
2026-09-20 12:12:49 +08:00
kdletters
fc0ce4ee5f
补齐跨工程插件启动的界面测试响应
...
Project CI / AI game creator shell Rust shard 2/4 (push) Successful in 7m17s
Project CI / AI game creator shell Rust shard 3/4 (push) Successful in 7m29s
Project CI / AI game creator shell Rust shard 4/4 (push) Successful in 7m36s
Project CI / AI game creator shell Rust shard 1/4 (push) Successful in 7m42s
Project CI / AI game creator shell Rust smoke (push) Successful in 2m28s
Project CI / AI game creator shell Rust crates (push) Successful in 2m47s
Project CI / Backend tests (push) Successful in 8m49s
Project CI / Repository checks (push) Successful in 8m40s
Project CI / Frontend tests (push) Successful in 9m41s
Project CI / Native shell tests (push) Successful in 12m29s
Project CI / AI game creator shell web tests (push) Failing after 4m51s
为五个项目打开与对话恢复测试提供插件项目绑定及空插件列表响应
保留原有业务状态断言和产品错误提示,修复完整界面门禁暴露的测试桩缺口
2026-09-20 10:58:10 +08:00
kdletters
c1d26f11df
移除 Cocos 和 Unity 插件的工程类型限制
...
统一插件列表、启动、面板和 Agent 工具的可用性判断,保留开关与平台约束
调整前端自动启动并修复 Cocos 项目切换的旧连接与订阅快照竞态
补充插件宿主、工具目录和前端回归测试,同步插件技术规范与共享决策
2026-09-20 10:53:16 +08:00
kdletters
15774a1c02
修复项目自动上传并增加后台完整工程下载
...
Project CI / AI game creator shell Rust shard 1/4 (push) Successful in 7m24s
Project CI / AI game creator shell Rust shard 4/4 (push) Successful in 7m25s
Project CI / AI game creator shell Rust shard 2/4 (push) Successful in 7m28s
Project CI / AI game creator shell Rust shard 3/4 (push) Successful in 7m31s
Project CI / AI game creator shell Rust smoke (push) Successful in 1m57s
Project CI / AI game creator shell Rust crates (push) Successful in 2m41s
Project CI / Repository checks (push) Successful in 4m10s
Project CI / Native shell tests (push) Successful in 11m20s
Project CI / Frontend tests (push) Successful in 10m30s
Project CI / AI game creator shell web tests (push) Successful in 5m41s
Project CI / Backend tests (push) Successful in 14m9s
接入真实项目打开、切换和关闭生命周期并修复退出等待竞态
新增后台项目列表及按原目录校验导出的 ZIP 下载
补充快照完整性元数据、后台权限和取消清理
固定默认 AGC 存储目标并支持空文件与特殊字符路径
补充自动化测试及真实 OSS 只读导出验证
记录本地数据库 404 导致完整 HTTP 联调和安装版实机验证待补
2026-09-20 10:07:31 +08:00
k88936
1c830e6fe6
修正钱包入口回归用例的断言目标
...
Project CI / AI game creator shell Rust shard 1/4 (pull_request) Failing after 17s
Project CI / AI game creator shell Rust shard 4/4 (pull_request) Failing after 17s
Project CI / AI game creator shell Rust shard 2/4 (pull_request) Failing after 18s
Project CI / AI game creator shell Rust shard 3/4 (pull_request) Failing after 18s
Project CI / AI game creator shell Rust crates (pull_request) Failing after 16s
Project CI / Native shell tests (pull_request) Failing after 18s
Project CI / Backend tests (pull_request) Failing after 18s
Project CI / AI game creator shell Rust smoke (pull_request) Failing after 19s
Project CI / Frontend tests (pull_request) Failing after 7s
Project CI / AI game creator shell web tests (pull_request) Failing after 12s
Project CI / Repository checks (pull_request) Failing after 12s
- apps/ai-game-creator-shell/tests/appSurface/project-development.suite.ts 的「keeps the wallet entry available when the workbench opens the UI editor」改为断言 game-workbench-layout-account 的两处落点(策划工作台与主工作台)以及主工作台的 !uiEditorRoute 门控
- 用例原先断言 game-workbench-chat-wallet 出现一次,但该槽位在当前源码里已不存在(钱包移到布局层),断言恒为 null 导致用例一直失败;注释同步改成当前落点
2026-09-19 23:37:25 +08:00
k88936
860f3f09d4
UI 编辑器打开时不再重复渲染工作台布局层的钱包入口
...
- apps/ai-game-creator-shell/src/view/project-development/index.tsx 主工作台布局里的 walletEntry 槽改为 !uiEditorRoute && walletEntry
- UI 编辑器路由下 UiEditorPage 自己会用同一份 walletEntry 渲染头部钱包,布局层再渲染一次会让同一个入口挂载两份、浮层与编辑器工具条钱包重叠
2026-09-19 23:36:57 +08:00
k88936
dc1cac1c15
给 Skill 引用补上每条消息的数量上限
...
- apps/ai-game-creator-shell/src-tauri/src/agent/direct_codex_user_item/validation.rs 新增 MAX_DIRECT_CODEX_SKILL_REFERENCES=32 与 skill_count 计数,超出即拒绝
- 附件与素材引用已有上限,Skill 引用是唯一没有上限的非文本 part:每条都会触发一次 root/<name>/SKILL.md 文件探测并往 turn/start.input 里加一项,畸形超长 userItem 可以放大文件探测与模型输入
- 补上 inline_skill_reference_count_is_bounded_independently;cargo test direct_codex_user_item::validation:7 passed
2026-09-19 23:35:41 +08:00
k88936
c5a7386465
统一附件摘要的清洗口径
...
- apps/ai-game-creator-shell/src-tauri/src/agent/direct_codex_user_item/wire.rs 抽出 attachment_reference_summary,turn 输入与 history/prompt 投影共用同一份摘要
- 原先 direct_codex_user_item_to_codex_turn_input 自己拼摘要,跳过了 sanitize_attachment_name/media_type/local_path,模型侧可能收到 C:\tmp\notes.md 这类原始路径名,而历史投影里是清洗过的
- cargo test user_item:24 passed;cargo check 通过
2026-09-19 23:32:55 +08:00
k88936
926fe9ae0f
复用 validate 返回的清单,去掉 wire 输入投影里重复的一次清单读取
...
- apps/ai-game-creator-shell/src-tauri/src/agent/direct_codex_user_item/wire.rs 的 direct_codex_user_item_to_wire_input 直接用 validate_direct_codex_user_item 返回的 manifest
- 原先 validate 之后再 read_manifest_for_project 一次,每次投影都会多读一次项目清单(并重复 seed task 变更),与 direct_codex_user_item_to_codex_turn_input 的口径也不一致
- cargo test user_item:24 passed;cargo check 通过(本机 stale target 需先 touch shared-contracts/src/lib.rs)
2026-09-19 23:30:22 +08:00
k88936
e7967cf67b
删除 runtime-settings 用例里空的发布态设置注册函数
...
- 删除 apps/ai-game-creator-shell/tests/appSurface/runtime-settings.suite.ts 里空的 registerPublishedRuntimeSettingsTests
- apps/ai-game-creator-shell/tests/appSurface.test.ts 去掉对应 import 与调用
- 它注册 0 条用例,留着会让人以为发布态运行时设置仍有覆盖
2026-09-19 23:20:25 +08:00
k88936
5aeaf38112
删除 project-development 用例里空的用户面边界注册函数
...
- 删除 apps/ai-game-creator-shell/tests/appSurface/project-development.suite.ts 里空的 registerUserSurfaceBoundaryTests
- apps/ai-game-creator-shell/tests/appSurface.test.ts 去掉对应 import 与调用
- 它注册 0 条用例,留着只会让人以为用户面边界仍有覆盖
2026-09-19 23:19:58 +08:00
k88936
6f5ca47385
删除空的 run-trace 用例文件与其注册
...
- 删除 apps/ai-game-creator-shell/tests/appSurface/project-preview/run-trace.suite.ts(只剩一个空的 registerProjectRunTraceTests)
- apps/ai-game-creator-shell/tests/appSurface/project-preview.suite.ts 去掉对应 import 与调用
- 说明:该文件被清空后 parseAgentRunTrace 与 formatAgentRunStatus 已没有用例覆盖,重新补测属于后续单独任务,本提交只清理空壳
2026-09-19 23:19:34 +08:00
k88936
3e3c3df41f
删除空的 run-status 用例文件与其注册
...
- 删除 apps/ai-game-creator-shell/tests/appSurface/project-preview/run-status.suite.ts(只剩一个空的 registerProjectRunStatusTests)
- apps/ai-game-creator-shell/tests/appSurface/project-preview.suite.ts 去掉对应 import 与调用
- 空注册函数挂在测试入口上会让人以为运行状态还有用例覆盖,实际一条都没有
2026-09-19 23:19:29 +08:00
k88936
051c21d97f
删掉立项策划用例里传给 App 的无效 agentDockVisible prop
...
- apps/ai-game-creator-shell/tests/appSurface/plan-gdd.suite.ts 三处 React.createElement(App, {...}) 不再传 agentDockVisible
- 同 design-agent.suite:该 prop 属于 ProjectDevelopmentView,AppProps 未声明,传入不影响任何渲染,只会误导读者以为 Agent dock 被隐藏
2026-09-19 23:18:49 +08:00
k88936
21382926dc
删掉设计 Agent 用例里传给 App 的无效 agentDockVisible prop
...
- apps/ai-game-creator-shell/tests/appSurface/design-agent.suite.ts 四处 React.createElement(App, {...}) 不再传 agentDockVisible
- agentDockVisible 是 ProjectDevelopmentView(工作台)的 prop,AppProps 里没有它,传了也不会生效;它替换掉的旧 orchestrationMode/projectSupervisorOnly 曾经是真实的 App prop,留着会让人误以为这里会隐藏 Agent dock
2026-09-19 23:18:39 +08:00
k88936
62f1ec83bf
让工作台壳写入的运行态提示不被通用错误兜底覆盖
...
- apps/ai-game-creator-shell/src/features/agent-runtime/model.ts 的 projectRuntimeVisibleError 公共文案白名单补上「待回答问题已变更,请刷新策划状态」「需要在 Tauri App 内运行。」「请先初始化本地项目」
- 这三条是 App.tsx setProjectChatError 直接写入的给用户看的动作指引,此前不在白名单,经策划运行态窄条渲染时会被替换成通用的「策划 Agent 执行失败,请稍后重试」
2026-09-19 23:17:30 +08:00
k88936
263588af6a
把运行中回合的秒级计时下移到耗时文案组件
...
- apps/ai-game-creator-shell/src/view/project-development/chat/components/DirectProjectConversation/DirectProjectConversation.tsx 新增 DirectTurnElapsed,自己持有 1 秒 tick 与已耗时渲染
- apps/ai-game-creator-shell/src/view/project-development/chat/DirectProjectChatView.tsx 删除 turnUsageNow state 与其 interval,不再把每秒 tick 传给会话区
- 原先每秒 tick 触发的是整个聊天视图重渲染(含 Markdown 回合列表、工具调用组与队列芯片),现在只重渲染耗时那一小块
2026-09-19 23:16:42 +08:00
k88936
50291a5e77
订阅过期恢复后补跑被搁置的 consume
...
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectThreadChatSubscription.ts 在 consume 的 finally 之后补一次 consumeAgain 重排
- SUBSCRIPTION_EXPIRED 恢复期间到达的通知会因 consuming 仍为 true 只置位 consumeAgain,而 do/while 已因异常退出,原先这批事件要等下一次通知才会被消费
2026-09-19 23:15:48 +08:00
k88936
8aa737e032
「显示更早」读取失败时补上项目路径守卫
...
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts 的历史分页 catch 在写 statusNotice 前先比对 projectPathRef.current
- 与成功路径和首个屏幕加载一致;原先切换项目后旧项目在飞读取的失败会显示成新项目的错误
2026-09-19 23:15:15 +08:00
k88936
9243bb42a1
去掉 Direct 回合成功后多余的第二次清单刷新
...
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts 的 runTurn 不再在成功路径刷新清单,统一由 startTurn 的 finally 刷新
- 原先一轮成功会先后调用两次 get_local_game_manifest,finally 那次已覆盖成功与报错路径
2026-09-19 23:14:51 +08:00
k88936
67252d36b2
修掉写权限门拒绝后 Direct 发送队列永久卡住的问题
...
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts 在 ensureConversationWriteAllowed 返回 false 且未重跑时,主动放下忙态并继续 dispatchNextQueuedTurn
- 该轮已由 dispatchNextQueuedTurn 出队,原先 finally 只在 invoked 为真时继续出队,导致后续排队消息再也不发送且提示/队列芯片一直显示
2026-09-19 23:14:18 +08:00
k88936
97fc1918c4
给 Direct 回合的前置步骤补上错误出口
...
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts 在 startTurn 的异步 IIFE 里加 catch,按项目路径守卫后把错误交给 onRuntimeError
- 原先只有 try/finally:写权限门 rejection 会成为未处理拒绝,回合静默失败且已乐观追加的用户消息没有解释
2026-09-19 23:13:53 +08:00
k88936
034c369b88
排队发送后不再立刻抹掉「已加入发送队列」提示
...
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts 拆出 clearDraftInput(只清输入与附件),排队成功分支改用它
- 原先同一事件里先 enqueueTurn 写提示、紧接着 clearPendingInput 把 composerNotice 置空,React 批处理下用户永远看不到队列确认文案
2026-09-19 23:13:13 +08:00
k88936
884aabe6d7
Direct 聊天权限门改为必填,去掉默认放行
...
- apps/ai-game-creator-shell/src/view/project-development/chat/DirectProjectChatView.tsx 删除 ALLOW_CONVERSATION_ACCESS 及两个权限门 prop 的默认值,改为必填
- 原先缺省实现恒返回 true,调用方漏传等于静默跳过工作台壳的读写权限判定;唯一调用方 App.tsx 本来就会传入两个门
2026-09-19 23:12:28 +08:00
k88936
f58249a75e
给 clientTurnId 的回退生成补上随机熵
...
- apps/ai-game-creator-shell/src/view/project-development/chat/conversation/directCodexConversation.ts 在无 crypto.randomUUID 的回退分支追加 Math.random 派生的随机串
- 原先只有时间戳 + 页内序号,多个 WebView 在同一毫秒创建首轮会得到同一个 clientTurnId,而 Rust 侧用它做项目级唯一校验与历史关联键
- 结果仍是 ASCII 字母数字与连字符组成、长度在 6..160 之间,满足 native 校验
2026-09-19 23:12:02 +08:00
k88936
38fb9aa7ac
删除 Direct 输入区发送按钮里不可达的忙态分支
...
- apps/ai-game-creator-shell/src/view/project-development/chat/components/DirectProjectComposer/DirectProjectComposer.tsx 发送按钮只在非 busy 分支渲染,去掉 '思考中' 文案、Loader2 转圈与 disabled 里的 busy 条件,并移除不再使用的 Loader2 import
- busy 时仍由既有 ComposerStopButton 承担停止入口,渲染结果不变
2026-09-19 23:11:14 +08:00
k88936
b5e10f3851
合并 Direct 输入区来自同一模块的两条 type import
...
- apps/ai-game-creator-shell/src/view/project-development/chat/components/DirectProjectComposer/DirectProjectComposer.tsx 把 gameCreationApp 的 GameCreationAppAssetManifestEntry 与 GameIterationVersion 合并成一条 import type
- 不涉及任何运行时行为
2026-09-19 23:10:51 +08:00
k88936
c4e2793db1
把回合执行过程渲染的两层三目抽成 renderTurnProcess
...
- apps/ai-game-creator-shell/src/view/project-development/chat/components/DirectProjectConversation/DirectProjectTurn.tsx 新增 renderTurnProcess,负责空过程、运行中平铺与结束后折叠三种分支
- 组件主体不再嵌套三目,渲染结果与 data-testid="turn-process" 等 DOM 结构保持不变
2026-09-19 23:10:35 +08:00
k88936
79cb510891
把排队消息标题的嵌套三元改成提前返回
...
- apps/ai-game-creator-shell/src/view/project-development/chat/components/DirectProjectComposer/chatComposerQueue.ts 的 queuedChatTurnLabel 先处理空文本再判断截断
- 返回值不变
2026-09-19 23:10:01 +08:00
k88936
3160131889
给澄清问答卡提交路径补上 rejection 兜底
...
- apps/ai-game-creator-shell/src/view/project-development/planning/PlanningUserInputCard.tsx 在 Promise.resolve(onSubmit(...)).finally(...) 之间加 .catch(() => undefined)
- onSubmit 的契约允许返回 rejected promise,原先只挂 finally 会把 rejection 变成未处理拒绝;与 GddApprovalCard 的处理口径一致
2026-09-19 23:09:38 +08:00
k88936
c46687f0ef
把澄清问答卡提交按钮文案的嵌套三元改成顺序分支
...
- apps/ai-game-creator-shell/src/view/project-development/planning/PlanningUserInputCard.tsx 把 answerPrepared / controlBusy||submitting 的嵌套三元改成先取默认值再覆盖的 submitLabel
- 文案取值不变
2026-09-19 23:09:20 +08:00
k88936
137533484b
抽出策划视图共用的 Design 模式判据与回调兜底
...
- apps/ai-game-creator-shell/src/view/project-development/planning/PlanningChatView.tsx 新增 designMode、designActionsBusy 与三个 Design 回调兜底常量
- DesignAgentPhaseStatus(顶部)与 DesignAgentPendingActions(底部)原先各自重复 designView||onDesignApprove、controlBusy||planGddDecisionBusy 和 ?? (()=>undefined),现在共用同一份取值
2026-09-19 23:09:00 +08:00
k88936
00063ba882
抽出策划输入区与提交按钮共用的禁用判据
...
- apps/ai-game-creator-shell/src/view/project-development/planning/PlanningChatView.tsx 新增 composerDisabled,替换 ResourceReferenceInput 与提交按钮上逐字重复的四条件表达式
- 判据取值不变,后续改条件时不会只改到其中一处
2026-09-19 23:08:02 +08:00
k88936
cb3d452a44
把策划输入框提交按钮文案的嵌套三元改成顺序分支
...
- apps/ai-game-creator-shell/src/view/project-development/planning/PlanningChatView.tsx 的 submitLabel 改为先给默认值再按 needsUserInput / controlBusy 覆盖
- 取值结果不变,只是去掉三层嵌套三元表达式
2026-09-19 23:07:42 +08:00
k88936
257e407df7
策划会话 GDD 展示的 agentId 改用 PLANNING_SESSION_AGENT_ID 常量
...
- apps/ai-game-creator-shell/src/view/project-development/planning/planningSessionV2.ts 的 gddDisplayFromArtifact 不再写死 'planning-agent-v2' 字面量
- 与同结构里的 rootAgentId 共用 planningSessionContract.ts 的常量,避免 id 变更时要改两处
2026-09-19 23:07:25 +08:00
k88936
0d3ab25499
删除输入区里只会在挂载时跑一次的草稿清空 effect
...
- apps/ai-game-creator-shell/src/features/project-workspace/ResourceReferenceInput.tsx 删除依赖只有 resetPromptPolish(稳定 useCallback)的 effect
- 该 effect 读 liveDraftRef.current 却把它排除在依赖外,实际只在挂载时执行一次;清空草稿时重置润色状态的逻辑已由 OnChangePlugin 内联承担
2026-09-19 23:07:02 +08:00
k88936
2a8063a83a
让技能清单查询失败后可以重试
...
- apps/ai-game-creator-shell/src/features/project-workspace/ResourceReferenceInput.tsx 在 list_agc_skill_catalog / list_client_extensions 的 catch 里放开 skillCatalogRequestedRef
- 原先标记在调用前就置位且失败时不回退,一次瞬时失败会让该输入区此后不再拉取技能候选
2026-09-19 23:06:05 +08:00