suzmii
abbf1465e2
GameAgent 工具调用卡片:回读合并、折叠卡片与无障碍
- app/types.ts:新增 GameCreatorDirectToolCall / Detail / Change 类型,并给
GameCreatorDirectTurnUpdateEvent 增加可选 toolCalls 字段(老事件 undefined 走原路径)
- App.tsx:订阅 game-creator-direct-turn-update 时按 id 归并工具调用增量(completed 覆盖
running、startedAt 取最早),打开项目时整表替换为 read_direct_tool_calls 的回读结果
- App.tsx:只把「对话里已有该回合」或「当前正在跑的回合」的工具调用交给面板,避免旧卡片漂尾
- ProjectSupervisorView.tsx:新增 toolCalls / activeTurnId 属性,按回合把卡片插在
**同一回合最后一条 assistant 消息之后**,同回合内按 startedAt 升序;当前回合在 assistant
消息落盘前锚到最后一条 assistant 消息
- ToolCallCard.tsx(新增):Codex 风格可折叠卡片,`<button aria-expanded aria-controls>` +
`hidden` 控制展开,键盘可达,aria-label 为「执行命令:npm run build」
- ToolCallCard.tsx:折叠态显示图标/标题/摘要/进行中状态点/状态文案;展开态显示命令、
文件路径 + 变更类型、输出
- styles.css:新增工具调用卡片样式区块,running 状态点与 failed 配色都用现有 --platform-* 变量
- tests/appSurface/project-development.suite.ts:新增两条用例 —— 实时回合卡片从 running 走到
completed 并在回合结束后仍挂在同一回合消息之后;打开项目时调用 read_direct_tool_calls
2026-09-14 15:00:46 +08:00
..
2026-09-14 15:00:46 +08:00
2026-09-07 17:05:42 +08:00
2026-08-28 17:09:02 +08:00
2026-09-10 19:55:58 +08:00
2026-08-24 21:44:44 +08:00
2026-09-12 17:31:51 +08:00
2026-09-03 10:36:43 +08:00
2026-08-26 02:32:04 +08:00
2026-08-20 19:07:25 +08:00
2026-09-11 19:44:04 +08:00
2026-08-20 19:07:25 +08:00
2026-09-14 14:17:20 +08:00
2026-09-08 22:03:37 +08:00
2026-09-12 20:48:13 +08:00
2026-09-11 18:09:48 +08:00
2026-09-02 18:15:38 +08:00
2026-08-11 14:34:42 +08:00
2026-09-13 14:48:55 +08:00
2026-08-20 19:07:25 +08:00
2026-09-11 14:53:11 +08:00
2026-09-12 06:41:49 +00:00
2026-09-12 05:21:21 +00:00
2026-08-08 16:18:45 +08:00
2026-08-31 19:47:23 +08:00
2026-09-07 15:17:21 +08:00
2026-09-03 10:02:05 +08:00
2026-09-07 15:17:21 +08:00
2026-08-20 19:07:25 +08:00
2026-09-03 20:02:48 +08:00
2026-07-20 05:50:24 +08:00
2026-09-03 10:35:23 +08:00
2026-08-20 19:07:25 +08:00
2026-09-13 14:48:55 +08:00
2026-09-09 16:32:43 +08:00
2026-09-08 11:56:36 +08:00
2026-08-13 13:36:21 +08:00
2026-09-12 18:48:31 +08:00
2026-09-13 17:06:09 +08:00
2026-09-12 13:30:18 +08:00
2026-09-10 20:41:19 +08:00
2026-08-20 19:07:25 +08:00
2026-07-21 19:40:38 +08:00
2026-09-12 20:49:03 +08:00
2026-09-12 18:56:43 +08:00
2026-09-13 17:06:09 +08:00
2026-09-11 23:33:08 +08:00
2026-09-09 16:09:39 +08:00
2026-09-12 20:49:03 +08:00
2026-09-13 14:07:03 +08:00
2026-09-11 13:54:12 +08:00
2026-09-11 21:31:30 +08:00
2026-09-11 20:29:45 +08:00
2026-09-12 20:52:38 +08:00
2026-09-13 14:07:03 +08:00
2026-09-10 15:43:03 +08:00
2026-09-11 16:42:40 +08:00
2026-07-31 12:00:48 +08:00
2026-09-11 21:48:43 +08:00
2026-09-12 20:49:03 +08:00
2026-09-11 20:08:22 +08:00
2026-09-10 21:00:54 +08:00
2026-09-11 16:42:58 +08:00
2026-09-11 13:30:14 +08:00
2026-09-13 14:07:03 +08:00
2026-08-12 10:54:16 +08:00
2026-09-10 20:41:19 +08:00
2026-09-11 16:58:49 +08:00
2026-08-12 10:54:16 +08:00
2026-09-13 14:07:03 +08:00
2026-09-11 20:29:45 +08:00
2026-09-11 13:26:17 +08:00
2026-09-12 20:48:13 +08:00
2026-09-12 20:49:03 +08:00
2026-08-12 13:14:55 +08:00
2026-09-12 18:48:04 +08:00
2026-09-13 14:07:03 +08:00
2026-09-12 15:30:38 +08:00
2026-09-12 20:49:03 +08:00
2026-09-12 17:23:22 +08:00
2026-09-12 18:23:02 +08:00
2026-09-12 20:48:13 +08:00
2026-08-20 19:07:25 +08:00
2026-09-09 20:08:04 +08:00
2026-09-13 14:48:55 +08:00
2026-09-13 14:07:03 +08:00
2026-07-30 18:01:19 +08:00
2026-07-30 18:01:19 +08:00
2026-09-12 17:23:22 +08:00
2026-09-12 17:23:22 +08:00
2026-08-20 19:07:25 +08:00
2026-09-03 19:36:18 +08:00
2026-08-25 13:06:46 +08:00
2026-08-20 19:07:25 +08:00
2026-08-20 19:07:25 +08:00
2026-08-20 19:07:25 +08:00
2026-09-08 11:56:36 +08:00
2026-09-08 11:56:36 +08:00
2026-09-04 16:30:43 +08:00
2026-09-03 14:42:38 +08:00
2026-08-20 19:07:25 +08:00
2026-09-08 11:56:36 +08:00
2026-09-04 16:30:43 +08:00
2026-09-11 21:48:43 +08:00
2026-09-11 22:18:40 +08:00
2026-09-12 20:48:13 +08:00
2026-08-08 10:25:02 +08:00
2026-08-26 21:34:04 +08:00
2026-08-23 19:06:05 +08:00
2026-09-08 11:56:36 +08:00
2026-09-12 17:31:51 +08:00
2026-09-08 11:56:36 +08:00