优化: AI Chat 消息视图: 闪烁修复+骨架统一+过程卡降级+任务关联 chip
MessageList.vue:
1. 流式闪烁修复: _mdRenderKey 稳定化 + key 对齐, 消除流式重渲染抖动
2. 骨架统一: 过程步骤卡改用 trace 卡骨架(头部一行摘要 + 正文增量)
3. 过程卡视觉降级: 缩进收窄 + 紧贴结果, 弱化过程突出结论
4. 消息任务关联: TASK_REF_TOOLS 映射(advance_task/run_workflow) 从
toolCalls[].args 派生任务 chip, 零数据模型改动(单一事实源), 无任务工具
的消息不渲染 chip; 新增 .ai-trace-task-chip 样式 + go-to-task emit
AiChat.vue: goToTask(taskId) 接参, router.push('/tasks?taskId=xxx')
Tasks.vue: applyRouteTaskId 消费 query.taskId 自动开抽屉(onMounted 跨路由 +
watch 同路由), 消费后 router.replace 清 query 保持 URL 干净
i18n zh/en: aiChat.goToTaskHint + ai.trace.taskRef 双语补键
验收: vue-tsc --noEmit EXIT 0 + build EXIT 0。
This commit is contained in:
@@ -113,6 +113,7 @@ export default {
|
||||
examplePrompt4: '生成一个项目灵感',
|
||||
goToSettings: '去设置',
|
||||
goToSettingsHint: '分离窗口无法直接打开设置,请在主窗口的设置页配置 AI 提供商',
|
||||
goToTaskHint: '分离窗口无法直接打开任务,请在主窗口查看任务详情',
|
||||
|
||||
// ── Provider 切换反馈──
|
||||
providerSwitched: '已切换到 {model}',
|
||||
@@ -136,12 +137,12 @@ export default {
|
||||
clearSkill: '取消技能',
|
||||
skillBadgeTip: '已注入技能「{name}」的完整规程',
|
||||
placeholderWithSkill: '已选技能,输入参数后回车',
|
||||
placeholderDefault: "输入消息...(/ 触发技能,@ 引用实体)",
|
||||
placeholderDefault: "输入消息...(/ 触发技能,@ 引用实体)",
|
||||
skillNoMatch: '无匹配技能',
|
||||
skillNotLoaded: '未读取到本机技能',
|
||||
|
||||
// ── @ 实体引用(@ 触发 popover,选中插入 [类型:名] 标记) ──
|
||||
mentionHint: "@ 引用项目/任务",
|
||||
mentionHint: "@ 引用项目/任务",
|
||||
mentionGroupProject: '项目',
|
||||
mentionGroupTask: '任务',
|
||||
mentionGroupIdea: '灵感',
|
||||
@@ -233,7 +234,7 @@ export default {
|
||||
|
||||
// ── Input Augmentation 层: mention/skill 注入反馈 ──
|
||||
// search_files 盲搜被白名单兜底拒绝(不应弹授权窗,直接友好提示用户改用 @引用或绝对路径)
|
||||
searchFilesBlocked: "search_files 仅在已授权目录可用,请用 @[项目] 引用或提供绝对路径",
|
||||
searchFilesBlocked: "search_files 仅在已授权目录可用,请用 @[项目] 引用或提供绝对路径",
|
||||
// /技能 热重载(ai_reload_skills IPC)成功后提示
|
||||
skillReloaded: '技能已重新加载',
|
||||
// @引用 实体 resolve 失败(id 指向的项目/任务/灵感/技能已被删除或不可用)
|
||||
@@ -327,7 +328,7 @@ export default {
|
||||
// ── TopBar 目标/项目上下文标签 ──
|
||||
goalsCount: '目标({n})',
|
||||
none: '无',
|
||||
projectLabel: "@项目",
|
||||
projectLabel: "@项目",
|
||||
|
||||
// ── 3c UX 批追加(I5 发送失败错误分类文案):按错误内容映射友好提示,
|
||||
// {msg} 保留原始错误串供排查,不丢线索 ──
|
||||
|
||||
Reference in New Issue
Block a user