Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
P
pac
  • Overview
    • Overview
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • ai-tools
  • pac
  • Repository

Switch branch/tag
  • pac
  • apps
  • pac-service
  • src
  • modules
  • assistant
  • assistant-invocation.ts
Find file
HistoryPermalink
  • luoqi's avatar
    fix(助手留痕): 补上会话 id,并把多步文本拼全 —— 两处都是「看起来对、其实会丢」 · df0d263d
    ■ 会话 id(`workflowRunId`)
      上一版每轮各生成一个 run id,判断"哪几轮是一批"只能靠 `turnNo` 归 1 反推 ——
      那是启发式,⚠️ 两位主管并发聊天时行是交错的,前端一旦裁剪历史 turnNo 还会错位。
      ⇒ 前端在**messages 为空**(= 一段新对话的第一句)时现生成 uuid,此后每轮原样带上;
        服务端落进 `workflow_run_id`,同一次对话各轮共用一个值。
      ⚠️ 前端可改的入参:只用于归组,⛔ 不参与鉴权取数;非 uuid 一律丢弃(服务端另生成),
        ⛔ 别让它成为写库的注入面(该列是 uuid 类型)。
      ⭐ 这也正好落在产品设计上:没有"新建会话",会话跟着他此刻在做的那件事走 ——
        离开工作台、组件重挂,messages 归空,下一句就是新的一段。
    
    ■ outputText 只落了最后一步
      🔴 AI SDK 的 `OnFinishEvent` 继承的是**最后一步**的 `StepResult`,`ev.text` 只有末步那段。
      模型在工具之间穿插说的话(「我先查一下」)全在前面的步里,只取 ev.text 就永远不进记录 ——
      而排查"它当时到底说了什么"全靠这一列。
      ⚠️ 线上实测那轮 5 次工具调用、6924 输出 token,落库只有 60 字 —— 那次凑巧没丢
        (它把话都留到了最后一步),⛔ 别指望每次都这样。
      ⇒ `joinStepTexts` 拼所有步,去重末步(它通常已在 steps 末项里)。
    
    验证:
      · tsc(service + web)通过;jest 85 套 1330 例全过(新增 5);eslint 干净
      · 真模型跑三轮:会话A 两轮共用 run=1cd20f63、会话B 独立 run=985bf1d3,
        按 run 分组正好 2 个会话 ✅
    
    ⚠️ 未做,留给产品定:界面 63 处写「时效」、0 处「时限」,而文档已改口径为「时限」。
      提示词的铁律是「使用者的词汇表 = 他在界面上见过的那些」⇒ 现在**该改的是文档或界面**,
      ⛔ 不能只把提示词单方面改成「时限」。
    luoqi committed Aug 16, 2026
    df0d263d
assistant-invocation.ts 5.77 KB

Download (5.77 KB)