Skip to content

增强(insight): 会话投影过滤 local-command/meta 噪音(/effort caveat 等) #1101

Description

@deepcoldy

背景(低优增强,非缺陷)

daemon 的 /api/sessions/:id/insightsrc/core/dashboard-ipc-server.ts:2328)按 role(user/agent/system)投影会话行。claude-code 的 local-command 事件(如 /effort<local-command-caveat> / <command-name> / <local-command-stdout>)目前作为 user 行原样投出,不是真实用户话语。

这在一次联调中放大过一个下游问题:某消费方把整段 task_log(含这些噪音行)拼接后当"最终答案"提取,捞出整段会话。该下游问题已在消费方侧独立修复(读取侧不再对这类任务合成),与本增强解耦——不修本项也不影响正确性

增强目标

在 insight 投影层过滤/标注 local-command 与 meta 噪音行(claude-code 通常带 isMeta:true 或 XML 包裹 <local-command-*> / <command-name>),使投影时间线只含真实的 user/assistant 交互:

  • 让 daemon 自己的 dashboard insight 展示更干净;
  • 让任何镜像/消费 /insight 的下游拿到更纯净的时间线。

参考实现线索

  • src/services/claude-transcript.ts 已有 isMeaningfulUserEvent / meta 识别逻辑(trailingAssistantText 用它跳过 local-command 回显),可复用为投影侧的过滤谓词。
  • 过滤应保守:只滤明确的 local-command/meta 噪音,不动真实 user 文本。

优先级

低。无发版前提、无数据污染、纯展示/镜像清洁度。除非有明确需求,不占常规迭代。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions