跳转至

SOP — 删除「歧义先问(硬门禁)」机制

  • 主题目录:rule-ambiguity-removal-20261006/
  • 变更日期:2026-10-06
  • 类别:C 类(全局规则与档案变更)
  • 状态:已落地;全局规则部分待开新会话生效

1. 背景

2026-10-03 因用户反馈「下发任务后从来不问我,不确认就自己思考」,在全局规则 ~/.trae-cn/user_rules/rule-agent-efficiency.md 中新增「歧义先问(硬门禁)」一节: 要求遇到"≥2 种合理解读且动作不可逆/代价高"时先问一句,并把「执行方式」表中 「任务范围或验收不清」一行改为指向该节;同时要求每轮答复带「开场澄清」验收行。

实践几天后,用户于 2026-10-06 判定该机制无用:它触发的是"开口先问"这一动作, 未带来预期的确认收益,反而增加答复负担,故要求删除。

2. 目标

变更完成后应达到的可验证状态:

  1. 全局规则中不再存在该节与「开场澄清」验收方;
  2. 「执行方式」表「任务范围或验收不清」行回到原表述(模型自判,必要时问一句,不指向该节);
  3. docs/HANDOFF.md 中该机制的"待观察"项清除,不再指向已删机制;
  4. 历史可追溯:原机制档案 rule-ambiguity-20261003/SOP.md 保留不动,本次变更以尾注 「八修」+ 总账 #29 + 本 SOP 留痕;
  5. 判据:grep -n '歧义先问\|开场澄清' ~/.trae-cn/user_rules/rule-agent-efficiency.md 仅命中两处历史修订注记(七修 / 八修),无任何活跃条款。

3. 前置条件

  • 对 ~/.trae-cn/user_rules/、~/.trae-cn/skills/.../references/、项目 docs/HANDOFF.md 有写权限;
  • 备份目录 rule-ambiguity-removal-20261006/backup/ 可写;
  • 无依赖服务,无需停服,无在跑作业。

4. 影响范围

项 内容
主机 / 组件 本机单机(rain),无远端;涉及 Trae 全局规则(每会话注入 system prompt)、skill ops-execution-efficiency 的 references/、项目 docs/HANDOFF.md;落点自检另附带修订 docs/BASELINE.md
是否需停服 否
窗口期 无(编辑器内秒级修改)
在跑业务 无
生效时点 全局规则改动自下一个新会话起生效;本会话内继续对话会因前缀缓存失效多付 ≈0.35 元/次

5. 分步操作

步骤 1:备份

先备份全部待改文件到本主题目录,权限收紧到 600;备份成功即视为获得执行授权。

TS=$(date +%Y%m%d-%H%M%S)
D=~/Documents/services/token_proxy/rule-ambiguity-removal-20261006
mkdir -p "$D/backup/trae-cn/user_rules" \
         "$D/backup/trae-cn/skills/ops-execution-efficiency/references" \
         "$D/backup/docs"
cp ~/.trae-cn/user_rules/rule-agent-efficiency.md "$D/backup/trae-cn/user_rules/rule-agent-efficiency.md.bak.20261006-214339"
cp ~/.trae-cn/skills/ops-execution-efficiency/references/optimization-backlog.md "$D/backup/trae-cn/skills/ops-execution-efficiency/references/optimization-backlog.md.bak.20261006-214339"
cp ~/.trae-cn/skills/ops-execution-efficiency/references/measured-baselines.md "$D/backup/trae-cn/skills/ops-execution-efficiency/references/measured-baselines.md.bak.20261006-214339"
cp ~/Documents/services/token_proxy/docs/HANDOFF.md "$D/backup/docs/HANDOFF.md.bak.20261006-214339"
chmod 600 "$D/backup/trae-cn/user_rules/"*.bak.*

预期:ls -l 显示四个备份文件存在,user_rules/ 下为 -rw-------。 失败判断:目录不可写 → 中止,未备份不得继续。

步骤 2:删除机制(规则两处)

① 表「任务范围或验收不清」行回退为原表述;② 删除「歧义先问(硬门禁)」整节。 实际执行以编辑器 SearchReplace 完成,等价命令如下(可复现):

坑:整节删除必须连带其头部空行,且不能只删节、留下指向该节的表格行—— 否则会形成 dangling 引用。两处须同一次变更内完成。

python3 - <<'PY'
import pathlib, re
p = pathlib.Path.home()/".trae-cn/user_rules/rule-agent-efficiency.md"
s = p.read_text(encoding="utf-8")
new_row = "| 任务范围或验收不清 | 先判断是否影响执行;若会影响,只问一个最小澄清问题,不自行猜范围或开始探索 |"
s = re.sub(r"\| 任务范围或验收不清 \|.*?\|\n", new_row + "\n", s, count=1)
s = re.sub(r"\n## 歧义先问(硬门禁)\n.*?\n\n(?=## 边界)", "", s, count=1, flags=re.S)
p.write_text(s, encoding="utf-8")
PY

预期:grep -c '^## 歧义先问' ~/.trae-cn/user_rules/rule-agent-efficiency.md 返回 0。 失败判断:仍有残留 → 手工删除该节,再跑第 6 章验证。

步骤 3:追加尾注「八修」

修订注记是规则的"变更账",须写明动了什么、为什么、在哪可查。

python3 - <<'PY'
import pathlib
p = pathlib.Path.home()/".trae-cn/user_rules/rule-agent-efficiency.md"
s = p.read_text(encoding="utf-8")
anchor = "> 见 token_proxy `rule-selfcheck-20261006/SOP.md`。"
add = ("\n> 2026-10-06 八修:**删除「歧义先问(硬门禁)」整节**(含「开场澄清」验收方),"
       "表格「任务范围或验收不清」\n> 行回退为原表述。动因:用户实测几天后判定该机制无用"
       "(触发的是\"开口先问\",未带来预期确认收益)。\n> 留存见 token_proxy "
       "`rule-ambiguity-removal-20261006/SOP.md`;原机制档案见 `rule-ambiguity-20261003/SOP.md`。")
s = s.replace(anchor, anchor + add, 1)
p.write_text(s, encoding="utf-8")
PY

预期:grep -n '八修' ~/.trae-cn/user_rules/rule-agent-efficiency.md 命中一行。

步骤 4:更新索引(HANDOFF §2 / §3.2)

  • §2「本轮 / 上一轮」两段整体前移一轮:新「本轮」写本次删除,原「本轮」降为「上一轮」, 原「上一轮」(rule-compliance-20261006)内容已在 SOP 且 §3.2 有对应条目,移除;
  • §3.2 删除「『歧义先问』是否默认生效」整条(该机制已不存在,无从验证)。
cp ~/Documents/services/token_proxy/docs/HANDOFF.md \
   ~/Documents/services/token_proxy/rule-ambiguity-removal-20261006/backup/docs/HANDOFF.md.bak.20261006-214339
python3 -c "import pathlib;p=pathlib.Path.home()/'Documents/services/token_proxy/docs/HANDOFF.md';print(len(p.read_bytes()),'bytes')"

预期:改后字节数 ≤ 10240,且 grep -c '歧义先问' docs/HANDOFF.md 为 0。

步骤 5:落地记录

  • 总账 optimization-backlog.md 第二节追加 #29;
  • 本主题 backup/README.md 登记四个备份文件。
grep -n '删除「歧义先问' ~/.trae-cn/skills/ops-execution-efficiency/references/optimization-backlog.md
grep -c '^|' ~/Documents/services/token_proxy/rule-ambiguity-removal-20261006/backup/README.md

预期:各返回一条记录 / 计数 ≥ 6。

6. 验证

grep -n '歧义先问\|开场澄清' ~/.trae-cn/user_rules/rule-agent-efficiency.md
grep -n '歧义先问' ~/Documents/services/token_proxy/docs/HANDOFF.md
wc -c ~/.trae-cn/user_rules/rule-agent-efficiency.md ~/Documents/services/token_proxy/docs/HANDOFF.md

预期: - 第一条仅命中七修 / 八修两处历史注记; - 第二条仅命中本轮「删除机制」的变更说明一行(该行描述的是"已删除",非残留机制); - 第三条规则文件较改前减少约 700 B;HANDOFF 改后 ≈9.2 KB(≤ 10240 B),且 §2.1 已压成稳定层指针。

不符时:回到第 5 章按步骤重做,或按第 7 章回滚。

7. 回滚

备份位置:rule-ambiguity-removal-20261006/backup/(结构镜像原路径层次), 逐条登记见 rule-ambiguity-removal-20261006/backup/README.md。

D=~/Documents/services/token_proxy/rule-ambiguity-removal-20261006/backup
cp "$D/trae-cn/user_rules/rule-agent-efficiency.md.bak.20261006-214339" ~/.trae-cn/user_rules/rule-agent-efficiency.md
cp "$D/docs/HANDOFF.md.bak.20261006-214339" ~/Documents/services/token_proxy/docs/HANDOFF.md
cp "$D/trae-cn/skills/ops-execution-efficiency/references/optimization-backlog.md.bak.20261006-214339" ~/.trae-cn/skills/ops-execution-efficiency/references/optimization-backlog.md

回滚后验证:第 6 章第一条应重新命中「## 歧义先问(硬门禁)」节标题与「开场澄清」验收方。

回滚触发条件(量化):① 用户要求恢复"开口先问"机制;② 实施后出现"因未澄清而做错方向" 的实例,且用户判定该机制有正收益。

8. 风险说明

风险 缓解
本会话内继续对话 → 前缀缓存失效,每轮多付 ≈0.35 元 改完立即开新会话继续
删除后回到模型自判,可能再现"不问就猜" 用户已明确接受该取舍;需要时按第 7 章回滚,或参考 rule-ambiguity-20261003/SOP.md 原设计
只删节未删表格引用 → dangling 指向 步骤 2 两处同批完成,第 6 章专门校验
误伤历史档案 历史 SOP 与 MB 旧样本一律不改;仅在规则尾注与总账留痕

附录

  • 交付物清单:SOP.md、backup/README.md、backup/(五个备份文件;其中 measured-baselines.md 仅备份、未改动)。
  • 相关档案:原机制 rule-ambiguity-20261003/SOP.md(保留,已废止); 前序 rule-selfcheck-20261006/SOP.md(七修,曾一并调整其验收行)。
  • 废止说明:本 SOP 第 1 章所述机制自 2026-10-06 起废止,其验收要求不再适用。

来源:/home/rain/Documents/services/token_proxy/rule-ambiguity-removal-20261006/SOP.md | 最后更新:2026-10-06 21:46(由 build/sync.py 同步,请勿在站点侧修改)