suzmii
3204758f34
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 7m40s
Project CI / Backend tests (pull_request) Failing after 21s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 4m34s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 5m52s
Project CI / Repository checks (pull_request) Failing after 29s
Project CI / Frontend tests (pull_request) Successful in 2m54s
Project CI / AI game creator shell web tests (pull_request) Failing after 4m1s
Project CI / Native shell tests (pull_request) Successful in 9m1s
模型不可用与模型状态一律走组件自带的底部 toast:删掉宿主分支
- 现象:`errorPresentation` 默认 `inline`,只有工作台那只传 `toast` + 宿主回调;首页/策划/画布的输入区里「模型服务不可用」还是**常驻占位文本**,不是浮层——同一个组件在不同宿主表现不一致
- 改法:浮层收进组件内部。新增 `components/common/composerNotice.ts`(模块级单例:`publishComposerNotice` + `useComposerNoticeHost`)与 `components/common/ComposerNoticeToast.tsx`(portal 到底部居中、6s 自动收起);`ConversationModelSelect` 与 `ComposerReasoningEffortSelect` 自己在失败/状态出现时报一条(各自去重:同一条只弹一次、清空后可再弹),失败 `tone="error"`、状态 `tone="neutral"`
- 单宿主:同一输入区里两个调用点只有一个真正渲染(编号最小的那个),保证同一时刻只有一条浮层、不会互相叠;输入区整体卸载时把待显示的提示一并丢掉,不留给下一个宿主
- 删宿主分支:`errorPresentation` / `onUnavailable` / `onNotice` / `noticePresentation` 四个 prop 与工作台宿主的 toast state / `pushModelNotice` / `pushModelStatus` 一并删除(grep 命中 0);任何宿主的输入区子树里都不再有常驻 `role="alert"` / `role="status"` 行
- 语义不变:不可用时发送仍禁用(`!modelReady`);文案仍是「模型服务不可用」;档位持久化通道不变
- 测试:新增「首页模型不可用与状态也走组件自己的底部 toast(子树不留常驻行)」;`design-agent.suite` 的推理档保存失败改成断言底部 toast + 控件子树无 `role="status"`;`chat-composer.suite` 的失败去重用例改成断言 toast 节点(同一条不重复弹、清空后再出现换新节点)
Refs #600, PR #607
2026-10-05 20:22:41 +08:00
..
2026-10-05 20:22:41 +08:00
2026-10-03 20:19:45 +08:00
2026-10-04 00:38:06 +08:00
2026-09-24 11:47:32 +08:00
2026-09-18 14:34:10 +08:00
2026-09-21 21:09:34 +08:00
2026-09-21 21:09:34 +08:00
2026-10-02 15:14:34 +08:00
2026-09-28 14:15:02 +08:00
2026-09-28 14:15:02 +08:00
2026-08-20 19:07:25 +08:00
2026-09-19 01:28:27 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 20:19:45 +08:00
2026-10-05 18:56:35 +08:00
2026-09-24 16:56:49 +08:00
2026-10-02 18:10:17 +08:00
2026-10-03 20:19:45 +08:00
2026-09-30 14:07:25 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 17:41:30 +08:00
2026-09-14 13:56:56 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 20:19:45 +08:00
2026-08-20 19:07:25 +08:00
2026-10-02 12:08:26 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 20:19:45 +08:00
2026-09-17 17:56:53 +08:00
2026-10-03 17:41:30 +08:00
2026-10-05 15:35:55 +08:00
2026-09-19 15:08:31 +08:00
2026-09-19 15:08:31 +08:00
2026-10-03 17:41:30 +08:00
2026-09-22 16:45:29 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-09-30 13:11:45 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 13:42:40 +08:00
2026-10-03 19:21:18 +08:00
2026-10-03 17:41:30 +08:00
2026-09-21 21:09:34 +08:00
2026-09-28 14:15:02 +08:00
2026-10-03 20:19:45 +08:00
2026-09-07 15:17:21 +08:00
2026-08-20 19:07:25 +08:00
2026-09-17 17:56:53 +08:00
2026-10-04 00:16:14 +08:00
2026-10-04 00:24:45 +08:00
2026-10-04 19:43:27 +08:00
2026-10-01 16:30:40 +08:00
2026-10-04 00:24:45 +08:00
2026-10-04 14:04:02 +08:00
2026-10-02 13:07:00 +08:00
2026-10-04 16:59:59 +08:00
2026-09-15 12:14:03 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 20:19:45 +08:00
2026-09-29 19:35:49 +08:00
2026-09-23 18:38:47 +08:00
2026-09-28 15:07:30 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-09-28 14:15:02 +08:00
2026-10-03 17:41:30 +08:00
2026-09-13 14:48:55 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 17:41:30 +08:00
2026-09-22 15:35:51 +08:00
2026-10-03 17:41:30 +08:00
2026-09-10 18:48:56 +08:00
2026-10-03 17:41:30 +08:00
2026-09-21 03:48:40 +08:00
2026-10-03 20:19:45 +08:00
2026-10-04 16:59:59 +08:00
2026-09-15 10:37:47 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 17:41:30 +08:00
2026-10-04 15:13:31 +08:00
2026-10-03 20:19:45 +08:00
2026-08-20 19:07:25 +08:00
2026-10-03 20:19:45 +08:00
2026-09-14 13:19:13 +08:00
2026-10-03 20:19:45 +08:00
2026-09-23 11:12:39 +08:00
2026-09-21 01:23:35 +08:00
2026-09-12 20:49:03 +08:00
2026-10-03 20:19:45 +08:00
2026-09-19 01:50:09 +08:00
2026-09-14 11:32:17 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-09-09 16:09:39 +08:00
2026-09-21 22:56:32 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-09-12 20:49:03 +08:00
2026-10-03 17:41:30 +08:00
2026-09-21 11:58:13 +08:00
2026-10-03 17:41:30 +08:00
2026-09-21 01:33:06 +08:00
2026-10-04 00:38:06 +08:00
2026-09-19 21:59:44 +08:00
2026-09-11 21:31:30 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-09-20 23:32:09 +08:00
2026-10-02 18:10:17 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 20:19:45 +08:00
2026-09-21 12:34:47 +08:00
2026-10-04 17:14:26 +08:00
2026-09-21 11:58:13 +08:00
2026-09-17 17:47:11 +08:00
2026-09-11 16:42:40 +08:00
2026-07-31 12:00:48 +08:00
2026-10-04 13:11:37 +08:00
2026-10-03 20:19:45 +08:00
2026-09-19 01:50:09 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-09-21 01:23:35 +08:00
2026-09-12 20:49:03 +08:00
2026-10-03 17:41:30 +08:00
2026-10-04 14:04:02 +08:00
2026-09-21 01:23:35 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 17:41:30 +08:00
2026-09-21 06:21:19 +08:00
2026-09-21 01:23:35 +08:00
2026-09-19 01:50:09 +08:00
2026-10-03 17:41:30 +08:00
2026-08-12 10:54:16 +08:00
2026-10-03 17:41:30 +08:00
2026-09-16 03:59:27 +08:00
2026-09-16 17:39:23 +08:00
2026-09-20 17:36:02 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-09-28 14:15:02 +08:00
2026-09-11 20:29:45 +08:00
2026-09-17 19:01:35 +08:00
2026-10-03 20:19:45 +08:00
2026-09-19 01:28:27 +08:00
2026-09-19 01:28:27 +08:00
2026-09-20 17:36:02 +08:00
2026-10-03 20:19:45 +08:00
2026-10-02 22:24:00 +08:00
2026-09-21 21:09:34 +08:00
2026-08-12 13:14:55 +08:00
2026-10-03 20:19:45 +08:00
2026-09-21 01:23:35 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 20:19:45 +08:00
2026-10-04 17:14:26 +08:00
2026-10-04 15:56:41 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 20:19:45 +08:00
2026-10-04 14:48:28 +08:00
2026-09-23 00:09:12 +08:00
2026-09-16 05:42:20 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +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-10-03 17:41:30 +08:00
2026-09-20 14:49:57 +08:00
2026-10-03 20:19:45 +08:00
2026-09-23 16:51:15 +08:00
2026-09-23 16:51:15 +08:00
2026-10-03 17:41:30 +08:00
2026-09-23 19:05:33 +08:00
2026-09-03 19:36:18 +08:00
2026-10-03 17:41:30 +08:00
2026-08-20 19:07:25 +08:00
2026-08-20 19:07:25 +08:00
2026-09-24 16:04:29 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-08-20 19:07:25 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 17:41:30 +08:00
2026-10-02 13:48:26 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 17:41:30 +08:00
2026-10-03 20:19:45 +08:00
2026-10-03 20:19:45 +08:00
2026-09-20 17:36:02 +08:00
2026-10-03 17:41:30 +08:00
2026-09-28 14:15:02 +08:00
2026-10-05 15:35:55 +08:00
2026-09-23 19:05:33 +08:00
2026-09-19 15:08:31 +08:00
2026-10-03 17:41:30 +08:00
2026-10-04 14:04:02 +08:00
2026-09-24 16:25:21 +08:00
2026-10-03 20:19:45 +08:00
2026-10-05 15:35:55 +08:00