用途:将混合内容文档中的各条 Zephyr 条目分发到对应的 bake log。该技能刻意保持自包含,以便在不改动 zephyr 技能的情况下替换为其他路由实现。文件名解析、权重记法、event_time 标签与参数优先级由 zephyr 技能定义,路由只消费这些规则,不重复声明;路由前应先阅读 zephyr 技能以了解 bake log 命名约定与参数默认值。参数包括 mode(move 或 copy,默认 move)与 bake log 目录(按 zephyr 技能的 Parameters 一节解析)。
触发:仅在明确要求时路由,绝不因为打开了 bake log 或其他文档就自动路由。可为会话授予一次性长期指令,如“边做边路由”,仅在该会话生效。触发示例:“Route the Zephyr entries in this log”“Route Zephyr entries from bake log 6-10 to their proper logs”“Move the Zephyr 9 entries out of this file”“Clean up the mixed entries in this log”。更新事件时间、添加 event_time 标签属于 zephyr 技能;Grafana 注释与链接属于其他技能,均不触发本技能。
识别与解析:条目为时间戳标题加其下正文,直到下一个标题。源文档在 H2 交付条目,bake log 的 ## bake log 区内的条目位于 H3。正文含 “For Zephyr N” 或 “For Zephyr N-M” 键的才算 Zephyr 条目,无该键的条目不移动不修改。按条目标题日期而非今天解析键:取不晚于标题日期、具有该日号的最新日期,如 6 月 1 日下的 “Zephyr 31” 解析为 5 月 31 日。再按命名约定解析为文件名。目标不存在则创建,仅最小脚手架:一个 ## bake log 区,条目置于其中。
插入与去重:条目插入目标 ## bake log 区,从 H2 降为 H3,正文内子标题同步降一级。区内按事件时间倒序(最新在前),正文无时间则用标题时间戳。去重前先按权重记法归一化,再比较:标题时间戳、Zephyr 键与归一化正文都相同则跳过。后续备忘仅在是对同一事实的重述或更正时覆盖前者;时间戳相近但记录不同事实的两条都保留,同一分钟本身不构成覆盖;无法确定时两条都留并向用户报告。
模式与收尾:move(默认)在条目落到目标后从源文档移除,copy 不动源文档。文件为空才删除,空即无标题、无正文,仅空白或末尾换行;删除需同时满足 mode 为 move 且请求结束时文档为空,由哪一步清空无关,本技能是否路由过也无关;仍有任何内容(标题、一行正文或 frontmatter)就保留。空源检查在请求最末执行一次,需等待所有抽走条目的步骤完成。写入时按 zephyr 技能归一化并添加 event_time 标签。提交按文件逐个进行:源被修改未删除则单独提交,被删除则单独提交删除,未改动(copy)则跳过。