SOP:HANDOFF「写入前置流程」(消除「先写后压」)¶
- 主题目录:
handoff-frontload-20261008/|实施日期:2026-10-08|实施人:Agent(用户授权) - 变更体:
~/.trae-cn/skills/writing-handoff/SKILL.md、~/.trae-cn/user_rules/rule-agent-efficiency.md、docs/HANDOFF.md - 关联:skill
writing-handoff《落点路由:入口三问》《落点自检》;全局规则「HANDOFF 落点自检」节
1. 背景¶
用户实测反馈:收尾写 HANDOFF 时,先把本轮内容写进去 → 发现超过 10 KB → 再压缩到 10 KB 以下。 这正是 skill《落点路由》配套条早已明令禁止的「不要先写进去、再靠超限重写来压缩(先污染后治理)」。
根因两条:
- 该配套条没有触发点、也没有验收方(与「收尾自查」「过账提醒」同款毛病),写在正文里必然退化;
- skill 的判定表把
> 10 KB直接写成「强制整体重写」,语义落在事后,反向鼓励了先写后压。
另有一处文档间矛盾:同一个 10 KB,skill 说动作是「整体重写」,全局规则说动作是「落点自检」 ——两处不一致,用户会同时看到「超 10 K 就大动一次」。
2. 目标¶
- 把「容量前置」升为收尾写 HANDOFF 的第 0 步(有序流程),补触发点与验收方;
- 统一 10 KB 的动作口径:写入前先落点自检搬移 / 整体重写腾空间,再写本轮;仍超线才整体重写;
- 机制不变(重写 + 落点自检搬移均保留)——只改顺序与措辞;
- 消除 skill 与全局规则的口径矛盾。
3. 前置条件¶
- 已备份
SKILL.md/rule-agent-efficiency.md/HANDOFF.md(见 §7); - 无需重启任何服务(改的是规则 / 技能 / 文档)。
4. 影响范围¶
| 项 | 内容 |
|---|---|
| 主机 | 本机 |
| 组件 | skill writing-handoff、全局规则 rule-agent-efficiency.md、docs/HANDOFF.md |
| 服务 | 无(不碰 proxy / systemd / Hook 脚本) |
| 是否停服 | 否 |
| 生效时点 | skill / 全局规则:新会话加载即生效;HANDOFF.md:下次 SessionStart 注入即生效 |
| 影响面 | 所有走 writing-handoff 的会话(含其它项目)——均在「收尾写 HANDOFF」时生效 |
5. 分步操作¶
步骤 1:skill 判定表改写¶
《何时重写》表中 文件 > 10 KB → 强制整体重写 一行改为:
「当前 + 本轮预定新增」≥ 10 KB→ 写入前先落点自检搬移腾空间,仍超线再整体重写——见《写入前置流程》;不做事后压缩
步骤 2:skill 新增《写入前置流程》节¶
插入于《何时重写》之后、《落点路由》之前;内容为五步有序表(① 先量 → ② 判线 → ③ 腾空间 → ④ 才写入 → ⑤ 复核) +「禁止先写后压」+ 验收行(只在本轮做过 ③ 时输出)。
步骤 3:skill 三处同步¶
- 《落点路由》配套条「容量前置」→ 指向新节;
- 《长度预算》「强制重写线」措辞 → 「触发线(写入前置处理)」(两处);
- 《收尾检查清单》容量项 → 改为「写入前已量 / 已前置处理、未做事后压缩」。
步骤 4:全局规则同步¶
rule-agent-efficiency.md「HANDOFF 落点自检」节:去掉「(强制重写线)」,新增「写入前置」硬步骤。
步骤 5:HANDOFF 自身按新流程处理(本轮示范)¶
| 步 | 实测 |
|---|---|
| ① 先量 | wc -c docs/HANDOFF.md = 9398 B |
| ② 判线 | 本轮预定新增小 → 未跨线 → 直接写(未触发 ③) |
| ④ 写入 | 长度行(9→10 轮)、§2 本轮、§3.2 新增观察行、§5 指针补两目录 |
| ⑤ 复核 | 9891 B(9.7 KB) ≤ 10240,未做任何事后压缩 |
6. 验证¶
6.1 静态核验(本次已做)¶
grep -n '写入前置流程' ~/.trae-cn/skills/writing-handoff/SKILL.md
grep -n '写入前置' ~/.trae-cn/user_rules/rule-agent-efficiency.md
grep -n '强制整体重写' ~/.trae-cn/skills/writing-handoff/SKILL.md # 预期:仅剩底线句「有则必须整体重写」
wc -c /home/rain/Documents/services/token_proxy/docs/HANDOFF.md
6.2 行为验证(下一轮收尾)¶
预期:收尾写 HANDOFF 时先报尺寸;若跨线则先搬移 / 重写并输出
HANDOFF 前置:写入前 X KB → 搬移/重写腾至 Y KB → 写入后 Z KB;不再出现「写完才发现超限、再压」。
7. 回滚¶
备份位置:handoff-frontload-20261008/backup/,逐条登记见 backup/README.md;两处全局台账(skill / user_rules)同步登记。
cd /home/rain/Documents/services/token_proxy
cp -p handoff-frontload-20261008/backup/SKILL.md.bak.20261008-015206 ~/.trae-cn/skills/writing-handoff/SKILL.md
cp -p handoff-frontload-20261008/backup/rule-agent-efficiency.md.bak.20261008-015206 ~/.trae-cn/user_rules/rule-agent-efficiency.md
cp -p handoff-frontload-20261008/backup/docs/HANDOFF.md.bak.20261008-015206 docs/HANDOFF.md
回滚后:skill 恢复「>10 KB → 强制整体重写」、无《写入前置流程》节;规则恢复「(强制重写线)」措辞、无「写入前置」步。
8. 风险说明¶
| 风险 | 缓解 |
|---|---|
| 「前置流程」被当成"又要多做一步"而跳过 | 有触发点(每次收尾写 HANDOFF 前)+ 验收方(做过 ③ 才输出一行),与落点自检同款口径;未做则不输出 |
| 写入前搬移打断原有编辑思路 | 只在「当前 + 预定新增 ≥ 10 KB」时触发;未跨线直接写 |
| 与「≥5 轮落点自检」重复 | 不重复:≥5 轮那条只做自检 + 通读、不重写;本条管写入顺序 |
| 验收输出变成噪声 | 未做 ③ 时不输出(不做也不提) |
| 「仍超线再整体重写」被读成「一超线就重写」 | 表述为先搬移、搬不动才重写;搬移即可解决多数情况 |
来源:
/home/rain/Documents/services/token_proxy/handoff-frontload-20261008/SOP.md| 最后更新:2026-10-08 01:54(由build/sync.py同步,请勿在站点侧修改)