evolve-checklisted
Install: claude install-skill pillumina/ascend-sleuth
# Evolve-Check(收尾评估协议)
> **定位**:self-evolve 的伴随形态。self-evolve = 用户显式发起的深度轮(全库观测/
> 攒批/聚合);本协议 = **任何内容流程收尾自动执行的轻量检查**——用户说"沉淀
> vllm-ascend 的 closed issue",issue-ingest 跑完收尾即触发本协议,不看用户是否
> 另说"改进系统"。演进是隐形执行策略的一部分;本文自包含执行参数。
>
> **本地执行说明**:本 skill 是收尾协议,非独立用户入口。内容流程(issue-ingest /
> to-reference / to-postmortem / diagnose / knowledge-groom)收尾时,agent
> `read` 本文件并遵循下方流程;用户说"这次做完有什么可改进的/值得沉淀的"也可直接触发。
## 何时触发(收尾钩子)
任何内容流程**完成主体目标后、出最终报告前**执行一次,成本目标近零(无信号即止):
- issue-ingest:沉淀与标记完成后;
- to-reference / to-postmortem:草稿产出、落盘后;
- diagnose:**不强制每次收尾跑本协议**(高频 + 已有内建 evolving:未命中起草候选
case、源码揭示稳定结构事实顺手走 to-reference、反馈捕获把 `feedback.outcome` 置 `pending`)——
其 L2/L3 视角(反复 miss 同族、流程摩擦)由 S2 replay(`s2_replay.py --todo`)
与深度轮归因事件信号覆盖,见 /skill:self-evolve §二;
- knowledge-groom:批审产出后。
触发**不需要用户说"跑自演进"**——它是流程的默认收尾步骤(同 diagnose 写 trace 的
地位)。如果一轮内容执行本身就是自演进深度轮的一部分(self-evolve 驱动),跳过本
协议(深度轮已含观测)。
## 评估步骤(先扫信号,无信号即止)
**第 1 步:读本轮执行现场**(不重扫全库、不读 case 全文——token 预算,原则九):
- **优先读统一执行记录**(走脚本,别内联 python):脚本自带三件内联版没有的东西——**路径解析**
(共享件在主检出还是本检出内)、**共享范围标注**(防把读数读成全系统读数)、**无记录时的退化口径**。
内联版还踩过另一类坑:记录里的 `at` 曾被 PyYAML 读成 datetime,`r['at'][:16]` 直接 TypeError
(写侧现已统一为带引号 ISO 字符串,该断点已修——但前三条理由不变,且新 worktree 里文件根本不存在):
`python3 scripts/tail_exec_log.py`(默认尾部 3 条;`--n 5` / `--skill evolve-check` / `--json`)
——拿"本轮做了什么"(替代凭 agent 记忆):
- 产出:本轮新增 case/reference/卡 id(从记录 products 提取,不重扫全库);
- 过程中有没有:miss(diagnose/replay 未命中)、重复手动动作、流程摩擦、执行错、
新数据源/新 issue 类型首次出现——这些在 decision_reason 未提及时由 agen