Skip to content

Commit 0acadda

Browse files
claude[bot]claude
andauthored
pm-ratchet: meter table-row bytes per file, close the Han+ASCII-punct soft breaks, cover compile-surfaces.md (#12263)
* pm-ratchet: meter table-row bytes per file, close the Han+ASCII-punct soft breaks, cover compile-surfaces.md Three cards against one serial unit, scripts/pm/check-skill-line-ratchet.mjs. #11947 — per-file max-table-row-bytes pins, shrink-only, seeded at each file's own widest table row read from the script's own scanner. Closes the largest unmetered channel the 120-byte line rule leaves open: a table row grows by widening a cell, which costs zero lines and is exempt by shape. #12098 — a CEILINGS row for references/compile-surfaces.md, the last uncovered pm-dispatch references file. Count read from the ratchet's own run (26). #12081 — the 34 measured soft breaks sitting after an ASCII , ; : between Han characters are merged (each rendered as a stray mid-sentence space), and wrapLine no longer offers that break at all. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RMTpSRF5CjMmQBFfPtPCwJ * pm-ratchet: make the breakLegal #12081 case load-bearing The case used an atom pair with no space after the mark, where the break was already illegal for an unrelated reason — it passed under ablation of the very guard it names. Pinned both shapes instead. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RMTpSRF5CjMmQBFfPtPCwJ --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent 8649b39 commit 0acadda

16 files changed

Lines changed: 380 additions & 74 deletions

File tree

.claude/agents/os-dev.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ model: opus
4141
了。
4242
探针遇 403 ⇒ 停下报 `blocked`,不进重试循环;只有网络错误才值得退避重试。**Scratchpad
4343
按 issue 隔离**:在 scratchpad 目录下建 `issue-<n>/` 子目录,所有临时文件写进去——同批
44-
agents 共用一个 scratchpad 目录,自然命名(`pr-body.md`)会被彼此的成功回执静默覆盖;
45-
靠结构隔离,不靠记性。
44+
agents 共用一个 scratchpad 目录,自然命名(`pr-body.md`)会被彼此的成功回执静默覆盖;靠结构隔
45+
,不靠记性。
4646
2. **issue 已由 PM 认领**(大家共享同一 GitHub 身份)。不要动 assignee;若发现与他人在途
4747
工作重复,停下报 `blocked`**PR 上不是你设置的状态属于另一个 actor——去问,永不去
4848
「纠正」**:共享身份让所有人的写入都像你写的;被改写的 body 只是关于 body 的证据,不证
@@ -110,8 +110,8 @@ model: opus
110110
6. **整条流水线在前台跑。** build 与 test 都是本任务的步骤:阻塞运行、读真实输出、继续。
111111
⛔ 永不把验证挂在后台 watcher 上然后停轮(禁令与两种合法终态见「干净收尾」)。
112112
**平台事实(2026-08-20 实测):容器把前台命令钉在 ~10 分钟上限,超时 SIGTERM 杀掉
113-
(`exit 143`,日志常常连一个发现都没写出)。** 这不改前台纪律,它划定前台里放什么:
114-
重活走规则 1 的锁 —— 串行化之后不再与并行 build 抢 CPU,争用下顶到上限的命令轻载只
113+
(`exit 143`,日志常常连一个发现都没写出)。** 这不改前台纪律,它划定前台里放什么:重活走
114+
规则 1 的锁 —— 串行化之后不再与并行 build 抢 CPU,争用下顶到上限的命令轻载只
115115
116116
~2 分钟;仓级扫描归 CI(见「本地验证范围」);消融/变异脚本自带还原 trap(硬线在「标
117117
准条款」的 ablation 条)。

.claude/skills/checklist-author/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,5 +58,5 @@ metadata:
5858
**没有子代理工具时,按角度顺序跑 —— 并在交付里声明这一轮是顺序执行的。** 会话里不
5959
存在 Task/子代理工具是允许的退化路径,不是阻塞;五个角度仍要逐个走完,一个都不省。
6060
但 SWEEP.md 的全部主张是「不同角度捕获不同的遗漏类,**因为读者彼此独立**」:塌缩成
61-
一个读者后,补上的测试项依然成立,**「没有别的遗漏」这个结论不再成立** —— 不声明,
62-
就没人分得清一轮降级的 sweep 和一轮完整的 sweep。
61+
一个读者后,补上的测试项依然成立,**「没有别的遗漏」这个结论不再成立** —— 不声明,
62+
没人分得清一轮降级的 sweep 和一轮完整的 sweep。

.claude/skills/checklist-test/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,8 +146,8 @@ expected-fail 探针 —— 永不在真实缺陷上把条款打成绿。
146146
`qa-run`,正常进分诊首触。清单准确性发现与 fixture 缺口归波次锚卡(sweep 跟踪
147147
issue)收口,⛔ 不抽取;环境阻塞记录在案即可。逐条 `fail` 的四分法处置、收口评论的
148148
机器行与抽取卡的溯源行见 §5。⛔ 认证 / 授权漏洞的抽取卡不写复现,见 Guardrails。
149-
- **完成判据** —— 一个区只有在**每一项都有判定**时才算跑完。跑不完的一轮照常立单:
150-
交出已有的判定,**外加一份点名未触达项的交接清单**,标题按上面的分数如实写。
149+
- **完成判据** —— 一个区只有在**每一项都有判定**时才算跑完。跑不完的一轮照常立
150+
单:交出已有的判定,**外加一份点名未触达项的交接清单**,标题按上面的分数如实写。
151151
`not-run` 是诚实判定 —— 判 1 项、11 项没跑就写 `(1/12) · … · 11 NOT-RUN`
152152

153153
同一份逐条款表 + 环境准备与测试的耗时之比,回报给维护者(chat),并链接已立的 issue。

.claude/skills/pm-dispatch/SKILL.md

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -138,9 +138,9 @@ fire 一轮烟测,判据取**GitHub 上的产出**;③ 每 fire 一轮:读座位
138138
- **写后回读按风险定向;标签写恒为硬步骤 read-modify-write + 回读**(维护者 2026-08-18 裁定):①
139139
先取现集 → ② 只增删目标标签 → ③ 写合并集 → ④ 写后回读核验 —— 整组 PUT 写的是
140140
本席快照,并发席落在你读与写之间的标签被静默剥掉,受害者常是你没打算碰的那枚;**
141-
载闸门语义的标签**(如 `needs:contract-review`)挂与清两向同此四步,闸门被剥不是红灯是放行,
142-
与「从未挂过」在证据上不可区分,回读是唯一察觉手段;多席可写面恒读回(防竞态覆盖,不
143-
只防 sanitizer);「API 返回 200」≠「落地内容正确」。
141+
载闸门语义的标签**(如 `needs:contract-review`)挂与清两向同此四步,闸门被剥不是红灯是放
142+
行,与「从未挂过」在证据上不可区分,回读是唯一察觉手段;多席可写面恒读回(防竞态覆
143+
盖,不只防 sanitizer);「API 返回 200」≠「落地内容正确」。
144144
- **PM 写进 GitHub 的文本 ⛔ 不用尖括号路径占位符**,改写成「后跟显式路径」的说法 ——
145145
被 sanitizer 吃掉后剩下的裸命令读起来完整而其实不是(实测:一条派发令就
146146
在「永不用裸形式」之前展示了它要禁的那条裸形式);backtick、围栏块与标题同吃,都不是
@@ -313,8 +313,8 @@ skills,类似分诊」)—— 贴内指针指向其车道文件,升级走技能
313313
正文 + 晚于正文最后编辑的评论(维护者 2026-08-12 批准;更早的已被吸收,是存档不是现状),中
314314
途状态
315315
由卡上 claim/ACCEPT 评论承载。**热文件串行队是正文具名段**(区域写不清就只能整文件串
316-
行)。无心跳,
317-
活性惰性判定;竞态三招 —— 动手前重 fetch 正文、审计评论时间戳先到先得、写后回
316+
行)。无心跳,活性惰性判定;竞态三招 —— 动手前重 fetch 正文、审计评论时间戳先到先得、
317+
写后回
318318
读。**换班报告默
319319
认零建议**(维护者 2026-08-12 裁定,原话:「还有各车道下班时会提交 skills 建议有必要吗?就是那些
320320
搞得后来skills越来越乱。」):强制建议清单已退役,离任报告只收三类 —— 原则错/缺(→ skills 席专题)
@@ -336,8 +336,8 @@ skills,类似分诊」)—— 贴内指针指向其车道文件,升级走技能
336336
收过不过得去?):in-scope ⇒ 挂父单sub-issue 下轮自动入队;顺带发现 ⇒ 独立立单进修复落地
337337
仓 backlog(查重先行,⛔ 不借sub-issue 通道把未分诊的塞进池子);触 spec/公共契约 ⇒ 转 spec 座
338338
339-
队列 + epic 侧写`Blocked-by:`;每次分流留一行审计评论。进度视图:父单维护 checklist 汇总评论,
340-
决策仍锚在具体 sub-issue。收尾四步、僵尸回收与领地防撞(声明式,越窄越诚实)细则见
339+
队列 + epic 侧写`Blocked-by:`;每次分流留一行审计评论。进度视图:父单维护 checklist 汇总评
340+
论,决策仍锚在具体 sub-issue。收尾四步、僵尸回收与领地防撞(声明式,越窄越诚实)细则见
341341
`references/seat-post-protocol.md`
342342

343343
## 分诊座位职责
@@ -405,8 +405,7 @@ sanitizer 截断的卡不
405405
`Task` 才是代裁候选)、发版板缺陷扫描(`type:Bug is:open`)、普通队列 Bug 优先平手判据。
406406

407407
**路由即分诊的技术判断,永不升级「哪个仓?」。** 读五仓代码定落点;跨仓的按contract-first
408-
拆分;
409-
父单已有子结构的,父单队列标签即可(sub-issue 自动成为候选),分诊逐个展开路由、补
408+
拆分;父单已有子结构的,父单队列标签即可(sub-issue 自动成为候选),分诊逐个展开路由、补
410409
`Blocked-by:`
411410
排序,父单是协调节点**永不派发**。每张留一条英文审计评
412411
论(「Triage: lands in …; rationale: …」)
@@ -511,8 +510,8 @@ sub-issue 自动是
511510
**批次独立性。** 一批内任两单不得可能碰同一个包/registry/barrel/spec schema;拿不准就串
512511
行。**
513512
文件单跨轮硬串行;延后不是搁置**(被延后那一刻就把已知的坑记到该 issue 上)。**家族派
514-
发(family dispatch)是本条的范围澄清,不是豁免**:独立性防的是两个 agent 相撞同一区域,
515-
一个 dev **有意**覆盖 N 张同区域已裁卡是平凡满足不变量,可折叠为一次派发(折叠认领约定见「认
513+
发(family dispatch)是本条的范围澄清,不是豁免**:独立性防的是两个 agent 相撞同一区域,一个 dev
514+
**有意**覆盖 N 张同区域已裁卡是平凡满足不变量,可折叠为一次派发(折叠认领约定见「认
516515
领」节)。准入五门全过才可折:① 同缺陷形态同修法(⛔ 不是同关键词/同子系统);② 同包/区域(一
517516
worktree、一 changeset、一队列位);③ **每张成员都已裁/已定级,⛔ 决策箱内一张不许**(承重
518517
门:防
@@ -607,18 +606,18 @@ dev 侧推分支要早 —— 远程分支是在飞工作最硬的证据。**死
607606
目经理技能 必须要使用 Fable 5」。**派发模型是 PM 的逐卡显式决定** —— 下限 `sonnet`(机械
608607
卡:正确
609608
性由门禁农场机械判定,失败在漏跑门不在判断);默认判断档 `opus`(M/L、裁决实施、任何带设
610-
计判断的卡;
611-
拿不准就升一档 —— 错派低档的返工贵过省下的额度);上限 `fable`(最重协议/流程/编排
609+
计判断的卡;拿不准就升一档 —— 错派低档的返工贵过省下的额度);上限 `fable`(最重协议/流
610+
/编排
612611
卡,按卡取用非新
613612
默认)。**⛔ 强制条款两条**:① 凡改**协议语义面**的卡一律 `model: "claude-fable-5"` —— 面 =
614613
`SKILL.md` 主文件、决策框架拷贝所在文件(以 `check:skill-frame-sync` 强制处为准)与
615614
`.claude/agents/os-dev.md`(2026-08-20 收窄,维护者原话:「接受你的建议」—— fable 当审计师用,不当
616615
施工队用);仅 `references/**` 面、或任一 pm-dispatch 治理面上一行级机械文本改动的卡降为 **opus
617616
施工**(纯机械一行 PM 酌定可至 sonnet 地板),**补偿控制即既有技能面复核档要求**(ACCEPT 路径
618617
分叉 ①:复核席跑契约复审档位)—— opus 施工的治理面改动只经 fable 档复核到达维护者,⛔
619-
不新增标签不新增链;② 凡**改变契约接受/拒绝行为或扩大公开面**的卡(`domain:spec` 语义面;
620-
判据即分诊代裁的机械边界测试与 spec 席内分派判据 —— `references/lanes/spec.md`,⛔ 不另抄第
621-
二份)一律 `claude-fable-5`(维护者
618+
不新增标签不新增链;② 凡**改变契约接受/拒绝行为或扩大公开面**的卡(`domain:spec` 语义
619+
面;判据即分诊代裁的机械边界测试与 spec 席内分派判据 —— `references/lanes/spec.md`,⛔ 不另
620+
抄第二份)一律 `claude-fable-5`(维护者
622621
2026-08-12 裁定,原话:「同意,就按语义面收窄,立卡并通知 spec 席」)—— 契约错毒化一切下
623622
游,全仓最贵(条款②闸门见「入队与落地」)。**卡面对条款②的复述仍是条款②**(座位复述
624623
会丢掉原文旁的例外,而被读的正是复述):额度耗尽豁免及其 `needs:contract-review` 补偿一并及
@@ -811,8 +810,8 @@ main 红了约一小时,逐 PR 连环红到 fix-forward 才止)。本段只适
811810
计数不追记,只有改变修法作用域时才记)。四分支:已知 flaky ⇒ 原样重投;**已修签名再现
812811
⇒ ⛔ 不重
813812
**,判新问题重新诊断;基上缺已合修复 ⇒ merge main 推新提交(重跑无效);新签名 ⇒ ⛔ 不
814-
重投,
815-
在 PR 与其 `Fixes` 卡各留完整签名与初判;每次处置留审计评论(重投写签名与台账依据)。
813+
重投,在 PR 与其 `Fixes` 卡各留完整签名与初判;每次处置留审计评论(重投写签名与台账依
814+
)。
816815
- **依赖前棒才能转绿的 PR:draft 停放 + 签名级预期红清单 + 解除条件**;**多个已实现 PR 全碰
817816
生成物
818817
⇒ 串行接力一次只放行一个,每棒一整圈、交接语义不是文本** —— 两式全文见
@@ -833,8 +832,9 @@ main 红了约一小时,逐 PR 连环红到 fix-forward 才止)。本段只适
833832
在内;老化 = 首触欠账);**发版阻塞**(release blockers;三仓 `target:<major>`之和,归零 = 三张板都
834833
空)。
835834

836-
**波次收工点(维护者 2026-08-09 裁定)。** ① 收工点 = 会话内在飞归零(⛔ 不在复核中途压缩;
837-
云卡不挡 —— 热移交见座位贴协议细则);② 收工存档 = 上下文里的判断 flush 到 GitHub(不过
835+
**波次收工点(维护者 2026-08-09 裁定)。** ① 收工点 = 会话内在飞归零(⛔ 不在复核中途压
836+
缩;云卡不挡 —— 热移交见座位贴协议细则);② 收工存档 = 上下文里的判断 flush 到 GitHub(不
837+
838838
夜义务),随后**立即派下一波**,⛔ 不等人闸。`/compact` 由维护者在终端会话择机执行,永远不
839839
是派发前提;①② 令任何压缩无损,前提是 GitHub 恒为唯一权威 —— 失守时压缩即丢判断。
840840

.claude/skills/pm-dispatch/references/decision-analysis.md

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@
99
## 适用面(边界)
1010

1111
- 只约束 **`needs-user-decision` 卡与决策箱讨论**的四维分析;内部工具卡(dev 派发用)的四维照
12-
旧,
13-
不强加行业类比。四条轴本身不变,轴定义与绑定句在主文件「升级与决策」。
12+
旧,不强加行业类比。四条轴本身不变,轴定义与绑定句在主文件「升级与决策」。
1413
- 只适用新记录,存量分析 ⛔ 不回改(new-records-only,与四维中文化同款先例)。
1514

1615
## 落卡分析模板(主文件「落卡/升级流程」②的 references 细则;中文,2026-08-19 裁)
@@ -39,10 +38,9 @@
3938
面文本 grep,不依赖注释形状 —— sanitizer 纪律见平台读数);四棱各一行,用中文写(语言例外
4039
见主文件
4140
全体座位的不变量)—— ① 项目长远合理性(缩小还是扩大特例/契约增生);② 实际业务拉
42-
动(今天谁撞上;
43-
零拉动默认 defer/remove);③ 防 AI 犯错(闭合枚举优于自由结构、响亮拒绝优于静默容忍);④ 创
41+
动(今天谁撞上;零拉动默认 defer/remove);③ 防 AI 犯错(闭合枚举优于自由结构、响亮拒绝优于
42+
静默容忍);④ 创
4443
业阶段
4544
不扩散(remove 优于 declare-and-maintain,每个已声明的键都是永久义务);一行推荐 + 字母选项
4645
(A/B/…);**一行强制置信缺口(「本分析看不见什么」)**。四棱行同受六项约束:每行论据从业
47-
务立场写,
48-
机制名词只作括号补充。
46+
务立场写,机制名词只作括号补充。

.claude/skills/pm-dispatch/references/dispatch-runbook.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@
77

88
出处(逐字,未译):「被依赖的卡片是不是应该通过label标注提高优先级。项目经理处理任务清
99
单时,bug 是不是应该提高优先级。」全序本体与 `pm:blocking` 推导在主文件;补遗:级序理由
10-
一行 —— p0 是显式裁定,blocking 一张挡多张,bug 是已坏的不变量、先于增强,卡龄防饿死;
11-
写入与摘除都在分诊轮 sweep,依赖者全关即摘,手工挂上的按误标处理、sweep 对着索引校正;
12-
种子与消费者注记在 `scripts/pm/ensure-pm-labels.sh`
10+
一行 —— p0 是显式裁定,blocking 一张挡多张,bug 是已坏的不变量、先于增强,卡龄防饿死;
11+
入与摘除都在分诊轮 sweep,依赖者全关即摘,手工挂上的按误标处理、sweep 对着索引校正;种子
12+
与消费者注记在 `scripts/pm/ensure-pm-labels.sh`
1313

1414
## 紧急卡 fable 直接分诊(维护者 2026-08-13)
1515

@@ -144,9 +144,9 @@ docs/指令类 M 卡碰不到 —— 归档义务因此只落云卡。
144144
`create_session``source_url` 出生即持推送授权。同时带 `outcome_branch`(= 认领分
145145
支)、显式 `model`(trigger 流不可指模型)、`title`(车道名开头,⛔ 不叫 os-dev;形如
146146
`⚡ <车道> #<单号> <短语>`)。
147-
2. **派发词必带自驱条款**(云会话回合一结束即停摆等 poke):⛔ 不为提问/中期汇报结束回合;
148-
开放选择按裁决与评估轴自裁记入终报 open_questions;合法回合终点只有 (a) 推送完成 +
149-
,或 (b) 硬阻塞详报。
147+
2. **派发词必带自驱条款**(云会话回合一结束即停摆等 poke):⛔ 不为提问/中期汇报结束回
148+
合;开放选择按裁决与评估轴自裁记入终报 open_questions;合法回合终点只有 (a) 推送完成 +
149+
终报,或 (b) 硬阻塞详报。
150150
3. **交付通道**:dev 自开 draft PR(`Fixes #<n>`,正文含验证记录)+ 终报以 issue 评论
151151
(os-dev-report 标记)交付;未 attach 的姊妹仓够不着,跨仓跟进卡 PM 代立;trigger 定时会
152152
话维持降级通道 —— 推送 outcome branch + 终报走最后一条会话消息,PM 代开 draft PR。

.claude/skills/pm-dispatch/references/landing-operations.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@
3434
auto-merge 与队列成员资格)。
3535

3636
**转 ready / 挂 auto-merge 之前先读 `mergeable_state`**:`dirty` ⇒ 先 merge
37-
`origin/main`(生成物在面上按 A 的固定序)再挂;`unknown` ⇒ 重读一次(惰性计算,
38-
事实行见平台读数)。**ready + 全绿 ≠ 已入队 —— 队列从不主动拉 PR,入队是显式动
37+
`origin/main`(生成物在面上按 A 的固定序)再挂;`unknown` ⇒ 重读一次(惰性计算,事实行见平台读
38+
)。**ready + 全绿 ≠ 已入队 —— 队列从不主动拉 PR,入队是显式动
3939
作。**`enqueued` 事件按序查:① `mergeable_state` 是否 `dirty`;②
4040
enable-auto-merge 调用根本没落地(GraphQL、吃配额、回显两向不可靠,按既有陷阱行
4141
重发一次,以 timeline 事件验证,⛔ 不看 `auto_merge` 字段);③ PR 碰

.claude/skills/pm-dispatch/references/lanes/cli.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020
聚合,`in_progress` 不是过;advisory 门禁红进 main 是共享损伤,照样止血立单。
2121
- **PR 侧绿 ≠ 队列侧绿**;队列分支读法与边界在 platform-readings(条目名
2222
`main/pr-{number}-{parent sha}`,parent sha 可重建队序;⚠️ ref 在出队后滞留)。
23-
- `dispatch-gates.mjs` 只报**路径推导**的地板 —— 条款②从卡**内容**判且优先于它;
24-
已知盲区:它不点名 `pnpm lint` 族 ⇒ 本车道派发令恒补一句「跑 `pnpm lint`」。
23+
- `dispatch-gates.mjs` 只报**路径推导**的地板 —— 条款②从卡**内容**判且优先于它;已知盲
24+
:它不点名 `pnpm lint` 族 ⇒ 本车道派发令恒补一句「跑 `pnpm lint`」。
2525
- ⛔ 永不削弱门禁 —— 棘轮上跳是门禁在报你的改动有缺陷;规则文案里自带的逃生舱只用
2626
于它描述的那种情形。
2727

.claude/skills/pm-dispatch/references/lanes/devx.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
据见 SKILL.md 多仓协调)。
1212
- 边界:守护 skills 的门禁脚本在 `scripts/` 下时归本席 —— 判据是**被改文件的路
1313
**,SUBJECT 例外与 spec 三面切分在 SKILL.md 域车道表;`.claude/workflows/`
14-
`.claude/skills/`;**范围内的文件 ≠ 范围内的卡**,归属按卡的 `domain:*` 判,
15-
反向亦然(本席卡的落点溢进他席文件面时,由此产生的人工合并等后果照单接受)。
14+
`.claude/skills/`;**范围内的文件 ≠ 范围内的卡**,归属按卡的 `domain:*` 判,反向亦然(本席卡
15+
的落点溢进他席文件面时,由此产生的人工合并等后果照单接受)。
1616

1717
## 常设承诺
1818

@@ -29,8 +29,8 @@
2929

3030
- **卡片正文冻结在立卡那一刻**,而本仓刻意把裁定/更正/`Blocked-by:` 放在评论里 ——
3131
超过一天的卡,正文是页面上最不当前的东西;先读晚于正文的评论再判可派性。
32-
- **量具在共享 checkout 上会静默说谎**:读内容用 `git show origin/main:` 带路径,
33-
跑脚本必须在自己的 worktree,复核 diff 用具名 ref,⛔ 不用 `FETCH_HEAD`(它是共
32+
- **量具在共享 checkout 上会静默说谎**:读内容用 `git show origin/main:` 带路径,跑脚本必须在自
33+
己的 worktree,复核 diff 用具名 ref,⛔ 不用 `FETCH_HEAD`(它是共
3434
享的,会被别的 agent 的 fetch 在两条命令之间冲掉)。
3535
- **门禁的自述必须为真** —— 理由为假的门禁比没有门禁更坏(下一个读者会相信某风险
3636
已被覆盖);新门禁靠**故意复现伤害**自证,语料已被修干净时加反空转肢(某个面读

.claude/skills/pm-dispatch/references/lanes/skills.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44

55
## 范围
66

7-
- 两个技能根:`.claude/skills/**`(含 pm-dispatch 本体)+ `skills/**`(发布目录,
8-
恒英文);`scripts/pm/**` PM 循环工具;指令架构文件:根 `AGENTS.md` + 根
7+
- 两个技能根:`.claude/skills/**`(含 pm-dispatch 本体)+ `skills/**`(发布目录,恒英文);`scripts/pm/**` PM
8+
循环工具;指令架构文件:根 `AGENTS.md` + 根
99
`CLAUDE.md`;governed 面的治理执行文件(`.github/CODEOWNERS` 治理路由半边 +
1010
SUBJECT 是 governed 面本身的门禁/审计)。全量判据与裁决引文在 SKILL.md 域车道
1111
表;governed 面统一定义见 SKILL.md「ACCEPT 之后的路径分叉」。

0 commit comments

Comments
 (0)