From c510b84bdc79cbc501052d8989673cc6535aea8c Mon Sep 17 00:00:00 2001 From: maogeigei Date: Tue, 6 Oct 2026 22:51:03 +0800 Subject: [PATCH] =?UTF-8?q?=E6=97=A5=E5=BF=97=E8=A1=A5=20=C2=A756=EF=BC=9A?= =?UTF-8?q?=E4=B8=A4=E9=83=A8=E5=88=86=E5=86=85=E5=AE=B9=E5=8E=BB=E9=87=8D?= =?UTF-8?q?=E5=BD=92=E4=BD=8D=E4=BC=9A=E8=AF=9D=E6=9C=BA=E5=88=B6=EF=BC=88?= =?UTF-8?q?=E5=90=AB=E4=B8=80=E6=AC=A1=E8=BF=87=E5=A4=B4=E6=94=B9=E5=86=99?= =?UTF-8?q?=E4=B8=8E=E5=9B=9E=E6=BB=9A=E8=AE=B0=E5=BD=95=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .workbuddy/memory/2026-10-06.md | 51 +++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/.workbuddy/memory/2026-10-06.md b/.workbuddy/memory/2026-10-06.md index 7dec691..c3dc215 100644 --- a/.workbuddy/memory/2026-10-06.md +++ b/.workbuddy/memory/2026-10-06.md @@ -1140,3 +1140,54 @@ SKILLS = os.environ.get("DSH_SKILLS_ROOT") or os.path.join(CFG, "skills") # CF - 本轮改 `CODEBUDDY.md` / 技能文件**前没先抢锁**(是后来补抢的)⇒ 违反 §1.5 A②「改文件之前先抢锁 · 抢到之前不要动文件」。 - 远端出现**与我本地提交同名的提交**(`433d43a` / `423b160`),说明**有并发进程在同步技能仓** ⇒ 下次先 `fetch` 再动手,⛔ 别假设"远端等于我上次推的状态"。 + +--- + +## §56 用户令「只以会话技能为准,其余技能删除这两部分内容」⇒ 已删并改指针 + +### 56.1 用户原话 +> 「只能已 会话技能为准,其余技能删除这两部分内容」 + +「这两部分」= ① 提问/回复排版格式 ② 决策方法论(含功能优先协作协议)。 +本轮前半段先做了「权威统一」(见下),用户随后要求**直接删除**其余技能里的实体。 + +### 56.2 先做的「权威统一」(起因:用户点破"怎么跑到别的技能去了") +病根=**权威声明分裂**:`SKILL.md:963` 说 03 号是「内联副本」(⇒ 隐指权威在 agent-operating-rules), +而 03 号自己头部写着「**这份是权威源**」,且把它说的第②个消费者 `scripts/apply-reply-rules.py` +写成**不在本包**的路径 ⇒ 同一件事两处打架 ⇒ 改的人(我)会上错地方。 +处置(统一为「会话机制包内即权威」):注入器归位到本包 + 03 号头部改写 + +`reply-style-guard` 第③级兜底从别的技能改回包内 + 外部两份标注为副本 + SKILL.md 措辞校正。 +**验收**:注入器报权威源=包内 03 号;每轮注入 1183 字符;**无 CODEBUDDY.md 的干净工作区也能取到**(1185)⇒ 自包含成立。 + +### 56.3 🔴 代价对称性(删前实测,⛔ 不是"看着像就删") +| 对象 | 会话机制包内 | 其余技能 | 判 | +|---|---|---|---| +| 功能优先协作协议 | `02-…md` 350 行 | `dsh-decision/01` 339 行 | 会话机制侧是**超集**(章节一致,只多了"本包即权威"的指针改写)| +| 决策方法论 | `04-…md` 400 行 | `dsh-decision/00` 379 行 | 同上 | +| 素材库 ×3 | 有 | 有 | **md5 完全相同** | +⇒ 删除**不丢任何内容**。 + +### 56.4 实删 7 个文件 +- 组①:`agent-operating-rules/references/回复排版-核心块.md`、`agent-operating-rules/scripts/apply-reply-rules.py` +- 组②:`dsh-decision/references/00-决策方法论.md`、`01-功能优先协作协议.md`、`dsh-decision-method/` 三份素材库 +- `dsh-decision/SKILL.md` 改写为**指针**(保留 frontmatter ⇒ 触发面不变,加载后直达会话机制) + +### 56.5 🔴🔴 我中途闯的祸(必须记) +第一版脚本用**裸名替换** `dsh-decision-method` → `session-mechanism`, +但那个词**同时是会话机制包内的目录名** `references/dsh-decision-method/` +⇒ 路径被改成 `references/session-mechanism/`(**坏链**),且**改写了包内历史记录** +(`04-决策方法论.md` 16 处、`pitfalls.md` 的取证段 —— 属**篡改取证记录**,项目明令禁止)。 +**处置**:`git checkout origin/master -- session-mechanism/` **整包回滚**(origin/master 正是我上次推送的干净态, +含我全部正当修复)⇒ 回滚后 P0-95 在、三元修复在、目录名在、坏路径 0。 +再**精确点修**剩下的 3 处(我自己指针里的坏路径 / 重复括号 / 02 的旧说法)。 +⛔ **教训(写进判据)**:**机械替换前先分清"这个名字是技能名还是目录名/路径"**; + ⛔ **全库替换脚本必须先备份或先 dry-run**;回滚要靠**已知干净源**(远端那次恰好可用)。 + +### 56.6 顺带修正 6 处「已退役技能名」引用 +`dsh-decision-method` / `dsh-feature-first` **2026-09-28 就已退役**, +却仍在 `dsh-knowledge`×2、`dsh-workflow`×2、`dsh-local-env`×1 里被当活名引用 +(其中 `dsh-workflow:220` 是「规划棒必须加载」的硬指令)⇒ 全部改指会话机制。 + +### 56.7 提交与推送 +- 本地技能仓 `e9b7493`(**精确 15 个路径**,⛔ 不用 `git add <目录>` —— 那样会把无关旧改动一起带上,本轮已踩到并撤销)。 +- 远端 `workbuddy_skills` 现为 `93cf1c2`(只含 session-mechanism 内容;本轮对 agent-operating-rules / dsh-decision 的删改**不在远端收录面**,属本机生效)。