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 文本。

优先级

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

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