SOP — 效率收益归因拆分结论回填全局技能 ops-execution-efficiency¶
一、背景¶
技能正文 references/measured-baselines.md 第一节原为「改造前 / 改造后」两列对照,其归因说明自承 136.84s→10.90s 是合并 + 并发的合计、两者从未单独拆分测量,并把拆分列为待办。
2026-09-30 补测了缺失的「只合并、不并发」一格(脚本与数据见同目录 MEASUREMENT.md),归因得以定死;同一次测量还查出 env-monitor-deploy 的 ops.batch_max_workers 对预检不生效。本变更把这两项结果回填进技能正文,使正文与实测一致,并关闭该待办。
二、目标¶
measured-baselines.md第一节:两列对照改为 A/B/C 三组,补合并/并发的收益拆分表;- 同文件新增第八节:预检并发度配置失效(根因、实测佐证、影响、挂账状态);
lessons-and-retractions.md:§一 增补被推翻条目 1 条、§二 增补踩坑 1 条、§三 划掉已完成的「收益归因拆分」待办;SKILL.md不改——红线、执行清单与结论表述均未变化。
验证标准:上列 1–3 可在文件中检索到;SKILL.md 字节数与改动前完全一致(12119)。
三、前置条件¶
- 无需 sudo 或系统权限,只改用户家目录下的
~/.trae-cn/skills/; - 改动前必须备份并记录 sha256(见第七章);备份置于本主题目录
backup/,结构保留原路径层次; - 两个目标文件均不足 800 行,可整段编辑,无需分段读取。
四、影响范围¶
| 项 | 内容 |
|---|---|
| 变更对象 | ~/.trae-cn/skills/ops-execution-efficiency/references/measured-baselines.md、.../lessons-and-retractions.md |
| 是否停服 | 否;技能是按需加载的规则文本,不影响任何在线系统 |
| 窗口期 | 无要求 |
| 生效时点 | 下一次会话中该技能被加载时 |
| 副作用 | 改 skill 使上游前缀缓存失效;开新会话后代价约 0.03 元,在旧会话继续则 0.1–0.35 元/次 |
五、分步操作¶
写入由 agent 的编辑工具完成;以下为改动内容与等价核对命令。
步骤 1:备份两个文件¶
S=/home/rain/.trae-cn/skills/ops-execution-efficiency/references
B=/home/rain/Documents/k8s_ins/attribution-split-20260930/backup/home/rain/.trae-cn/skills/ops-execution-efficiency/references
TS=$(date +%Y%m%d-%H%M%S)
mkdir -p "$B"
cp -p "$S/measured-baselines.md" "$B/measured-baselines.md.bak.$TS"
cp -p "$S/lessons-and-retractions.md" "$B/lessons-and-retractions.md.bak.$TS"
sha256sum "$S"/*.md # 记录回滚依据
预期:两个 .bak 文件生成(8341 / 6730 字节),sha256 为 7c879154… / 1037ab3f…。
实际值:20260930-135707。坑:备份目录须保留 home/rain/... 路径层次,否则多主题交叉时无法一眼对应原文件。
步骤 2:改 measured-baselines.md(4 处)¶
| 位置 | 改动 |
|---|---|
| 第一节表格 | 「指标 / 改造前 / 改造后」→ A/B/C 三组(A 旧码串行 136.84 s/126;B 合并串行 46.20 s/14;C 合并+并发 11.06 s/14),并加「合并省 90.64 s(66%)/并发省 35.14 s(26%)」拆分表;WARN/INFO 行降为表外一句 |
| 改造项 2 | 补注「度数据称取 ops.batch_max_workers —— 实测该键对预检不生效,见『八』」 |
| 归因说明 | 「从未单独拆分测量」→ 已拆分结论 + 自洽校验(单台 3.3 s、并发 5 分 3 批 9.9 s) + 指向 attribution-split-20260930/MEASUREMENT.md |
| 文末 | 新增「八、预检并发度配置失效」;测量方式代码块补 measure_serial.py 1 复现命令 |
核对:
S=/home/rain/.trae-cn/skills/ops-execution-efficiency/references
grep -n "^## 八、\|46\.20 s\|90\.64\|measure_serial" "$S/measured-baselines.md"
预期:命中第八节标题、B 组耗时、拆分数字与脚本命令各一行以上。
步骤 3:改 lessons-and-retractions.md(3 处)¶
| 位置 | 改动 |
|---|---|
| §一 已推翻条目表 | 新增一行:「预检并发度与 ops.batch_max_workers 同源」被推翻——该键对预检不生效 |
| §二 踩坑 | 新增「### 9. 把『配置写进文件』当成『配置已生效』」,判据:改动后必须用可观测证据(时间戳/计数/日志)验证 |
| §三 待办 | ~~**收益归因拆分**~~ 划掉,标注 2026-09-30 已完成并给出结论与档案指针 |
核对:
S=/home/rain/.trae-cn/skills/ops-execution-efficiency/references
grep -n "^- ~~\*\*收益归因拆分\*\*~~\|^### 9\.\|同源" "$S/lessons-and-retractions.md"
预期:三处各命中一行。
步骤 4:登记台账¶
在 backup/README.md 登记两个备份文件的「原路径 / 产生时间 / 因何产生 / 回滚什么 / 何时可删」,并附回滚命令。
六、验证¶
S=/home/rain/.trae-cn/skills/ops-execution-efficiency
wc -c "$S/SKILL.md" "$S/references"/*.md
grep -n "^## " "$S/references/measured-baselines.md" | tail -3
预期结果(实测):
| 文件 | 改动前 | 改动后 |
|---|---|---|
SKILL.md |
12119 | 12119(未变) |
references/measured-baselines.md |
8341 | 10217 |
references/lessons-and-retractions.md |
6730 | 7765 |
失败判据:SKILL.md 字节数变化(说明误改正文)→ 立即回滚;检索项缺失(说明写入被截断)→ 修正重试,两次不过即回滚。
七、回滚¶
备份位置:attribution-split-20260930/backup/home/rain/.trae-cn/skills/ops-execution-efficiency/references/,台账见同目录 backup/README.md。
TS=20260930-135707
B=/home/rain/Documents/k8s_ins/attribution-split-20260930/backup/home/rain/.trae-cn/skills/ops-execution-efficiency/references
S=/home/rain/.trae-cn/skills/ops-execution-efficiency/references
cp -p "$B/measured-baselines.md.bak.$TS" "$S/measured-baselines.md"
cp -p "$B/lessons-and-retractions.md.bak.$TS" "$S/lessons-and-retractions.md"
sha256sum "$S/measured-baselines.md" "$S/lessons-and-retractions.md"
回滚后校验和应回到 7c879154… / 1037ab3f…;随后开新会话验证技能可正常加载。
回滚触发条件(动手前量化,任一达标记即回滚):
1. SKILL.md 字节数变化;
2. 第六节检索项缺失且修正 1 次仍不过;
3. 技能在可用列表中消失或加载报错。
八、风险说明¶
| 风险 | 等级 | 缓解 |
|---|---|---|
| 在旧会话继续 → 前缀全量重建 | 中 | 收尾当轮即提醒开新会话;开新会话后代价约 0.03 元 |
| 正文与 SOP/MEASUREMENT 数字漂移 | 中 | 三处数字同源(46.20 / 11.06 / 90.64 / 35.14),改动时一并核对 |
误改 SKILL.md 正文(本次本不应改) |
低 | 验证项含字节数比对,变化即回滚 |
| 备份散落、无法对应原文件 | 低 | 备份保留 home/rain/... 路径层次并登记台账 |
附录:交付物清单¶
| 文件 | 说明 |
|---|---|
SOP.md |
本文件 |
RUNBOOK.md |
measure_serial.py 的运行与使用手册 |
MEASUREMENT.md |
归因拆分测量记录(本轮议题的另一半) |
measure_serial.py |
零侵入测量脚本(钉住预检并发度) |
backup/README.md |
两个 references 的备份台账与回滚命令 |
backup/home/rain/.trae-cn/skills/ops-execution-efficiency/references/*.bak.20260930-135707 |
改动前副本(回滚依据) |
被变更文件(不在本目录):~/.trae-cn/skills/ops-execution-efficiency/references/{measured-baselines.md, lessons-and-retractions.md}
来源:
/home/rain/Documents/k8s_ins/attribution-split-20260930/SOP.md| 最后更新:2026-09-30 13:58(由build/sync.py同步,请勿在站点侧修改)