Skip to content

Commit 2bf0113

Browse files
committed
docs(pm-dispatch): write the maintainer's ruling batch #3 — guard the dev's implementation choices, condition the report-only valve, widen the human floor and write the risk / workload criteria
Maintainer 「同意」 on director ruling batch #3 (2026-10-23): 1.1 A, 1.2 A, 2 A. - 1.1 A: the dev's own implementation choices stay (recorded in open_questions) under one guard — touching product-visible behaviour or a contract is a fork, not a choice; the PM's non-escalation classes carry the same guard. - 1.2 A: the "two reds in an hour" valve stays, with three hard conditions — flip to report-only only (never delete a gate or skip a test), send the item to the decision digest for the next batch in the same stroke with the two red runs, and flip back if the maintainer disagrees; it is after-the-fact ratification, never an exemption. - 2 A: the human floor widens (releases and anything public, external commitments, a card's fate, rules and process, defaults and factory shape, identity and tenancy model, cross-lane conflicts) and the two criteria the maintainer named become judgeable lines — seven risk tests and four workload tests, any one of which presents the item — plus the explicit never-presented list with its four-gate boundary. SKILL.md 〈升级与决策〉 gains the one pointer line that makes them binding on every seat. triage-duties.md lands at 120 (its ceiling on main; the −13 of the revocation and the +13 of this ruling net to zero); SKILL.md lands at its 319 ceiling. Claude-Session: https://claude.ai/code/session_01MJceC3xyxUtL12bEdf7QBC Co-authored-by: Claude <noreply@anthropic.com>
1 parent 6a305ac commit 2bf0113

4 files changed

Lines changed: 19 additions & 8 deletions

File tree

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,8 @@ PM 的工作是循环:选卡 → 认领 → 派发 → 收集 → 复核 → 报
213213
- 或责任三答齐指他人代码、已有正路、仅最高权限可达 ⇒ 只提文档或决策卡,⛔ 不派码。
214214
- 或修复以猜测(键名、值形状、模式表)定安全边界 ⇒ 决策卡先比对声明式方案。
215215
- 或修复需破坏性/难回滚动作;其余归 PM 裁量:派发与排序,维护者否决窗口而非许可门。
216-
- 具名不升级类(立即行动):恢复不变量;技术任务间顺序与依赖;验证策略;说明书脱节。
216+
- 人工地板与风险/工作量判据(`triage-duties.md`)任一命中即呈维护者,⛔ 不入 PM 裁量。
217+
- 不升级类(碰产品行为或契约即报 fork):恢复不变量;任务顺序;验证策略;说明书脱节。
217218
- 四类记账事同属不升级类,恒以无产品可见行为变化为界:去重与卡片合并;台账与记账整理;
218219
- 纯文档措辞更正(无契约声明改动);既有门禁内部参数与盲区修复(加强,非削弱,非新增)。
219220
- dev 的 `needs_decision` 一律呈人工:PM 附四维分析与推荐(含「疑属不升级类」),⛔ 不代答。

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@
112112
- 同时带 `outcome_branch`(= 认领分支)、显式 `model`(trigger 流不可指模型)、`title`。
113113
- `title` 以车道名开头,⛔ 不叫 os-dev,形如 `⚡ <车道> #<单号> <短语>`。
114114
- 二、派发词必带自驱条款:云会话回合一结束即停摆等 poke。
115-
- ⛔ 不为提问或中期汇报结束回合;开放选择按裁决与评估轴自裁,记入终报 `open_questions`。
115+
- ⛔ 不为提问或中报结束回合;实现取舍自定记入 `open_questions`;碰产品行为/契约报 fork。
116116
- 合法回合终点只有两个:推送完成加终报,或硬阻塞详报。
117117
- 三、交付通道:dev 自开 draft PR(`Fixes #<n>` 只写正文,`partof-closing-keyword` RULE 2,含验证记录)。
118118
- 未 attach 的姊妹仓够不着,跨仓跟进卡由 PM 代立。

‎.claude/skills/pm-dispatch/references/triage-duties.md‎

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,18 @@
9696
- 人工地板(恒呈维护者):功能新增;ADR;协议/公开契约变化;破坏性或难回滚动作。
9797
- 人工地板同含:安全/权限边界;门禁削弱(降阈/删必查/抬上限/跳测);新增运行时第三方依赖;
9898
- 花费/配额/舰队形态/默认模型档位;新增必需门禁/hook/棘轮(卡具名所守契约与预期捕获)。
99+
- 地板同含:发版与对外发布;对外承诺;卡的命运(关 not planned、降级、撤回、砍半);
100+
- 规则与流程(技能、AGENTS、工作流、CODEOWNERS、抬天花板、常设令、例外);跨车道冲突;
101+
- 默认值与出厂形态(租户默认、isDefault 权限集、OWD、模型档位、并发);身份与租户模型。
102+
- 风险判据(任一即呈):①安全/权限/身份/租户边界;②存量数据不可逆;③契约/ADR 变化;
103+
- ④对外可见动作;⑤门禁削弱或例外豁免;⑥悖于既裁或立新常设令;⑦选错时无门禁可抓。
104+
- 工作量判据(任一即呈):任一选项 ≥ size/l 或跨 ≥2 包;所选方案 ≥ 最便宜可行方案 2 倍;
105+
- 新增维护面(协议键、元数据类型、门禁、依赖、服务、车道);≥3 卡串行或占槽超一日。
106+
- 不呈:实现细节、不升级类、记账类、p3 排序、CI 重跑、分支清理、patch 依赖、既裁执行。
107+
- 不呈四门同立:无产品可见行为变化、无契约变化、可回滚、有门禁兑底;呈裁卡注判据。
99108
- 例外一:`platform-readings.md` 增量抬上限到落地行数,免决策卡,记 `ruledRaises` 引常设裁决。
100-
- 例外二:一小时内两次红未触包的门禁,任一席位先翻 report-only,裁定随后。
109+
- 例外二:一小时内两次红未触包的门禁,任一席位可先翻 report-only,三条硬条件缺一不可:
110+
- ①只翻 report-only,不删门不跳测;②同笔送待决策汇总入下批,附两红 run;③不同意即翻回。
101111
- 条件:席位验收评论逐条核实、去重计数(候选/落地/已有/拒收)、一事一行、不计重排。
102112
- 机械边界测试(条款②判据):改动扩大接受集或公开面 ⇒ 是;拉回已声明契约 ⇒ 否。
103113
- 决策形状的卡一律入 `needs-user-decision`,带四棱块与推荐,由总监席按批呈维护者。

‎scripts/pm/check-skill-line-ratchet.mjs‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1240,12 +1240,12 @@ export const CEILINGS = new Map([
12401240
['.claude/skills/pm-dispatch/references/seat-lifecycle.md', 96],
12411241
['.claude/skills/pm-dispatch/references/reading-discipline.md', 37],
12421242
['.claude/skills/pm-dispatch/references/cross-repo-coordination.md', 51],
1243-
// Lowered 120 → 110 by the maintainer's revocation of every autonomous-
1243+
// Unchanged at 120 through the maintainer's revocation of every autonomous-
12441244
// adjudication channel: the delegated-adjudication lane, its confidence gate
1245-
// and the first-class self-ruling gate left; the human-floor list stays,
1246-
// re-homed as what is always presented to the maintainer. Landed count,
1247-
// headroom 0, same convention (lowering is always legitimate).
1248-
['.claude/skills/pm-dispatch/references/triage-duties.md', 110],
1245+
// and the first-class self-ruling gate left (−13), and the same ruling batch
1246+
// ordered the human floor widened and the risk / workload criteria written
1247+
// as judgeable lines (+13); landed count, headroom 0, same convention.
1248+
['.claude/skills/pm-dispatch/references/triage-duties.md', 120],
12491249
// execution-duties.md, raised 183 → 185 by the split-off-card ruling — an
12501250
// ORDINARY raise, ⛔ not a cross-file move (card #23579). The text is two rule
12511251
// lines beside the derived-sub-issue rules in 〈候选与批次〉: a queued card found

0 commit comments

Comments
 (0)