Skip to content

Commit ab44ec9

Browse files
docs(pm-dispatch): the CI-red re-run leaves through the relay, so the seat invariant names no MCP write exception (#30715)
<!-- claude-projects-attribution: {"github_login":"os-elon-musk"} --> _Requested by **Elon** · [project thread](https://claude.ai/code/project/chan_01WedDzV26nniwxv7jC88B9D?thread=cmsg_01WedDzV26nniwxv7jC88B9DGUDhJ5QnVKq4qCnWNU4hzC)_ Fixes #30159 Clause-②: no Metadata-protocol: none ## 维护者速读 - 改了什么:pm-dispatch 全体座位不变量删去「唯一例外 MCP `rerun_failed_jobs`」,改写为 CI 红单次重跑也经中继 `rerun-failed.mjs`、先核 head;platform-readings 一行改称中继重跑,事实不变。 - 为什么改:其余文本与工具都只允许经中继重跑,这条旧例外读起来仍像一张 MCP 写许可。 - 风险与回滚:只改两行说明文字,行数不变,无代码;回滚 revert 本提交即可。 - 先看:`.claude/skills/pm-dispatch/SKILL.md` 第 94 行;`references/platform-readings.md` 第 286 行。 - 两分钟验证:`git grep -n rerun_failed_jobs -- .claude/` 应无输出。 - 需要你做的:无,席位落地。 ## What changes - `.claude/skills/pm-dispatch/SKILL.md` L94: the seat invariant names no MCP write exception; the one CI-red re-run leaves through the relay (`rerun-failed.mjs`), head checked first. Same line, so the file stays at 319 lines (ceiling headroom 0 unchanged). - `.claude/skills/pm-dispatch/references/platform-readings.md` L286: the merge-ref fact is respelled to the relay's re-run (`rerun-failed.mjs` → `run_rerun_failed` in `scripts/pm/fleet-write/ops.mjs`); the fact itself is kept. ## Tests Text-only `.claude/**` diff; no tests touched. ## Acceptance notes - `git grep -n rerun_failed_jobs -- .claude/ AGENTS.md` is now empty. - Other `.claude/**` / `AGENTS.md` text near "MCP" + re-run: `platform-readings.md:120` is a recorded reading (REST `rerun-failed-jobs` 403 vs MCP 201), not a grant. Left as is; not widened. - `.claude/**`-only diff ⇒ not published ⇒ `skip-changeset`. ## Verification <details><summary>Gate families derived by dispatch-gates --commands (22) + pnpm lint, all exit 0</summary> ``` node scripts/check-closing-keyword-parity.mjs :: exit 0 node scripts/check-closing-keyword-parity.mjs --self-test :: exit 0 node scripts/check-comment-mask-corpus.mjs :: exit 0 node scripts/pm/check-governed-queue-guard.mjs --self-test :: exit 0 node scripts/pm/check-harness-current.mjs --self-test :: exit 0 pnpm --filter @objectstack/lint run check:doc-formula-expressions :: exit 0 pnpm check:agent-test-spelling :: exit 0 pnpm check:cross-package-test-inputs :: exit 0 pnpm check:doc-authoring :: exit 0 pnpm check:driver-memory-census :: exit 0 pnpm check:gitlink-declared :: exit 0 pnpm check:nul-bytes :: exit 0 pnpm check:pm-expected-skips :: exit 0 pnpm check:pm-governed-merges :: exit 0 pnpm check:pm-governed-prose :: exit 0 pnpm check:pm-half-states :: exit 0 pnpm check:pm-skill-id-lint :: exit 0 pnpm check:pm-skill-ratchet :: exit 0 pnpm check:refd-timer-probe :: exit 0 pnpm check:required-contexts :: exit 0 pnpm check:skill-frame-sync :: exit 0 pnpm check:watch-hint-literal :: exit 0 pnpm lint :: exit 0 ``` `node scripts/pm/check-governed-merges.mjs --test` on both paths with +2/-2: GOVERNED, Tier S (`.claude/**`), size 4 lines. </details> 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_016WV4cwRgq9QjSG2MLwK4P6 --- _Generated by [Claude Code](https://claude.ai/code/session_016WV4cwRgq9QjSG2MLwK4P6)_ Co-authored-by: Claude <noreply@anthropic.com>
1 parent c35fed1 commit ab44ec9

2 files changed

Lines changed: 2 additions & 2 deletions

File tree

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ PM 的工作是循环:选卡 → 认领 → 派发 → 收集 → 复核 → 报
9191

9292
- 状态只经 GitHub 标签、assignee、正文行与 `pm:seat` 座位贴读写;循环须能从全新会话恢复。
9393
- 用户账号仅三用:assignee、授权批准、维护者亲手;批准账号永不跑席位或作其关联用户。
94-
- 内容写只走 REST 代理,⛔ 无 MCP 写,唯一例外 `rerun_failed_jobs`(限 CI 红单次重跑,先核 head)。
94+
- 内容写只走 REST 代理,⛔ 无 MCP 写;CI 红单次重跑亦经中继 `rerun-failed.mjs`,先核 head。
9595
- 写侧恒为 `objectstack-fleet[bot]`;`user.login` 记令牌不记席位,归属 = 文本里的 session ID。
9696
- 席位及其子代理 ⛔ 永不打印环境变量的值;判存在只用不印值的形式 `[ -n "${X+x}" ]`。
9797
- GitHub 上一切新内容用英文;中文只留四通道(维护者速读、轮报、裁决引文、四维分析)。

‎.claude/skills/pm-dispatch/references/platform-readings.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,7 @@
283283
- auto 档判定随命令形状变,不随能力变 ⇒ 被拒的复合命令拆成裸动作重试再报 blocked。
284284
- 读数:带链接与管道的 `git push` 被拒,裸 `git push origin <分支>` 放行,拒绝文案不点名元素。
285285
- 判定跨天翻面 ⇒ ⛔ 一次拒绝不是能力边界;`permissions.allow` 条目才是仓库侧确定性通道。
286-
- `rerun_failed_jobs` 复用原 run 的提交与合并 ref,不拿新 main 重算。
286+
- 中继重跑(`rerun-failed.mjs` → `run_rerun_failed`)复用原 run 的提交与合并 ref,不拿新 main 重算。
287287
- ⇒ 基上缺已合修复(修复合入晚于该 run 建立)时重跑无效,改 merge main。
288288
- 经 `rerun-failed.mjs` 重跑 PR `ci.yml` 失败 job 仅一次,先在 PR 或卡写明 flake 理由;二败即真红。
289289
- `run_rerun_failed` 只收 `ci.yml`;他 workflow 的 flake 走下两条,⛔ 永不空提交、永不关了重开。

0 commit comments

Comments
 (0)