Yaojia Wang
ddf7fa061a
feat(frontend): AI 对话核心——视图模型 + 数据/追加 hook + 抽屉(AC-3)
- lib/workbench/aiConversation.ts:纯视图模型(kind 标签/徽标、bubbleSide、
按 thread 归组 (created_at,seq) 定序、按作用域分区、接受动作映射)+ 单测。
- lib/workbench/useAiConversation.ts:Workbench 级懒加载 + 批量 append(乐观插入 +
正位对账 / 失败回滚),fail-soft 绝不 throw 进生成/HITL;silent 直投供工具箱页。
renderHook 测试覆盖懒加载去重、对账、回滚、silent、项目切换复位。
- components/workbench/AiConversationDrawer.tsx:本章对话 + 项目级生成两段的气泡抽屉,
克隆 ContextDrawer 的 a11y(role=dialog/log、Esc、focus trap、还原焦点);
ai 气泡挂 DRAFT-only 再接受按钮(替换整章/插入正文/回填选段),不绕开验收事务。
- lib/api/types.ts:re-export AiMessage* 码生成名。
2026-07-09 17:11:09 +02:00
..
2026-07-09 17:11:09 +02:00
2026-07-09 17:11:09 +02:00
2026-06-22 18:28:29 +02:00
2026-06-22 18:28:29 +02:00
2026-07-08 11:54:05 +02:00
2026-07-08 11:54:05 +02:00
2026-07-07 20:44:09 +02:00
2026-07-07 20:44:09 +02:00
2026-07-07 19:51:19 +02:00
2026-07-07 19:51:19 +02:00
2026-06-20 12:01:09 +02:00
2026-06-20 12:01:09 +02:00
2026-07-07 20:44:09 +02:00
2026-07-07 20:44:09 +02:00
2026-07-07 18:26:47 +02:00
2026-07-07 18:26:47 +02:00
2026-07-09 17:11:09 +02:00
2026-07-09 17:11:09 +02:00
2026-07-08 07:12:04 +02:00
2026-07-08 07:12:04 +02:00
2026-07-08 08:47:28 +02:00
2026-07-08 11:54:05 +02:00
2026-07-07 20:44:09 +02:00
2026-07-07 20:44:09 +02:00
2026-07-07 19:41:57 +02:00
2026-07-07 19:41:57 +02:00
2026-07-07 20:44:09 +02:00
2026-07-07 20:44:09 +02:00
2026-06-29 16:52:43 +02:00
2026-06-29 16:52:43 +02:00
2026-07-07 18:26:47 +02:00
2026-07-07 18:26:47 +02:00
2026-07-08 12:00:17 +02:00
2026-07-08 12:00:17 +02:00