From 4a3242c3f524f2d7ebfe7165cf38ad5b2a1d323e Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 23 Sep 2026 15:33:49 +0000 Subject: [PATCH] docs(pm-dispatch): the fork PR closes in the same stroke that closes its card A fork PR whose need landed internally was left open because its close was prose in a file no landing reader reads at MERGED. The card now names its fork PR on one line-start `Adopts:` line; the landing closeout closes that fork PR with thanks and the landing link in the same stroke; a not_planned close carries the decline; and the triage fire gains the fork-PR scan (with a closed-card arm) that its duty file never listed. Each added line in a ceilinged file is paid by retiring a line whose content the same file already states. Claude-Session: https://claude.ai/code/session_01A22sUB3mUWs6M36VgfijBq Co-authored-by: Claude --- .../skills/pm-dispatch/references/external-contributions.md | 4 +++- .claude/skills/pm-dispatch/references/landing-operations.md | 2 +- .claude/skills/pm-dispatch/references/triage-duties.md | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.claude/skills/pm-dispatch/references/external-contributions.md b/.claude/skills/pm-dispatch/references/external-contributions.md index 670116c2ff3..e07cb8edd01 100644 --- a/.claude/skills/pm-dispatch/references/external-contributions.md +++ b/.claude/skills/pm-dispatch/references/external-contributions.md @@ -4,13 +4,15 @@ 席位永不翻 ready、入队、挂 auto-merge 或批准它;席位复审是必需输入,⛔ 永不是放行许可。 - ① 先立卡:分诊 fire 扫 open PR 中 head 仓 ≠ base 仓者;无卡的按 PR 正文立卡,常规定级。 +- 该卡正文恒带行首 `Adopts: #M`(M = fork PR 号),立卡或挂接那一笔写;收口与补关只认这一行。 - 无卡的 fork PR 在板上不存在;PR 上只贴一条固定评论,原文: `this repository works card-first; filed as #N; this PR stays a draft until the card is graded` - ② 人裁的是问题不是代码:普通可复现缺陷路由到席位,不经维护者。 - 地板项(安全/权限边界、契约、功能)作业务问题进决策箱,与任何卡同批裁。 - ③ 席位采纳 diff,永不落地 fork PR:内部分支 cherry-pick 或重写,`Co-authored-by:` 贡献者。 - 门禁推导、达档复核与队列同内部工作;对贡献者的要求只作 fork PR 上的 review 评论。 -- 内部 PR 落地后关闭 fork PR,附致谢与落地链接;席位在 fork PR 上只写这两种评论。 +- 关卡那一笔同时关 `Adopts:` 所指 fork PR,⛔ 不拆到事后:completed 附致谢与落地链接。 +- not_planned 附致谢与谢绝理由;除 ① 的固定评论,席位在 fork PR 上只写 review 与关闭评论。 - ④ fork 的 CI 席位永不代批准运行;head 上 0 条 check run 读作 NOT MEASURED,⛔ 永不读作绿。 - 机器面:`check-governed-merges.mjs --pr ` 对 head 仓 ≠ base 仓走 H(人合)出口;head.repo 为空同。 - 供应链条款(fork 带来的依赖、lockfile、workflow、scripts)延后:第一张此类 fork PR 出现时再立。 diff --git a/.claude/skills/pm-dispatch/references/landing-operations.md b/.claude/skills/pm-dispatch/references/landing-operations.md index 8f5166640f7..3307cef73b4 100644 --- a/.claude/skills/pm-dispatch/references/landing-operations.md +++ b/.claude/skills/pm-dispatch/references/landing-operations.md @@ -16,7 +16,6 @@ - 外部评审链降为可选事后审计,非放行前提。 - 契约复核的适用面、资格与归属见 `references/contract-review.md`。 - 碰生成物的 PR 入队前先同步 + 整体重生成:四步序 `bash scripts/pm/os-regen-merge.sh`。 -- 跟到 MERGED 为止,入队后的看护归车道 PM 的落地窗口:每轮同时读队列分支与 `origin/main`。 - 默认分支 push 即触发对外部署的仓,只在验证层存在时才合并;无验证层 ⛔ 不合并。 - 验证层 = 部署以 CI 为闸、发布后探测线上面、失败自动回滚并立卡。 - 该类仓的落地判据是已发布且探测通过,⛔ 不是 MERGED;跟到发布为止。 @@ -66,6 +65,7 @@ - ② enable-auto-merge 调用根本没落地,重发与效果验证序列见 `platform-readings.md`。 - ③ PR 碰 `.github/workflows/**` 而 token 缺 workflows 权限。 - 确认 MERGED 同一动作里给 `Part of` 卡收口、`Fixes` 卡代关但标也须摘,⛔ 不拆到下轮巡检。 +- 卡以 completed 关闭且带 `Adopts:` 行 ⇒ 同一动作在所指 fork PR 贴致谢与落地链接并关闭它。 - `Part of` 卡开着不摘 `pm:dispatched`,无在飞物的卡就永远算进 `label:pm:dispatched is:open`。 - 摘标换回 `pm:queue` 或按剩余物定级,加一条写清交付了什么、剩下归谁的评论。 - 同刻读相关卡 `closed_by_pull_requests`,确认没有卡被正文闭合关键词误关。 diff --git a/.claude/skills/pm-dispatch/references/triage-duties.md b/.claude/skills/pm-dispatch/references/triage-duties.md index 31dd43eea7b..165da70f915 100644 --- a/.claude/skills/pm-dispatch/references/triage-duties.md +++ b/.claude/skills/pm-dispatch/references/triage-duties.md @@ -5,7 +5,6 @@ - 发版板(无板仓跳过)、查重/shadow 检查与代裁通道全仓照跑。 - fire 开局只按名加载互斥检查所需工具,`ToolSearch` 用 `select:`;判定本轮有活才加载其余。 - ⛔ 分诊 fresh session 开局不做泛关键词 ToolSearch;可验判据:空转轮 ~4 万 token 以内。 -- 工具加载纪律只约束分诊 fresh session 的开局;执行座位与 dev 不受约束。 - 两级盘点:小时轮以 `since` 窗口读增量,锚 = 座位贴上一份收班简报的时间戳。 - 查重缓存住席内:新会话全量拉,其后 `since` 增量;⛔ 不建分支、不共享、不依赖备份。 - 每日一 fire 跑全仓全量对账并归集日频职责;选层按 fire 时刻 ⛔ 不用计数器,简报写明层。 @@ -21,6 +20,7 @@ - 窗口耗尽未跑完的,下一 fire 从标签状态断点续跑。 - 排序:队列每轮清空时最新优先;清不空的那一刻起改最老优先。 - 裸卡数 >15 ⇒ 下一 fire 整轮改域分批集中模式,每批 ≤5 张同族卡,照样跑到清空。 +- 每 fire 同扫 open fork PR:无卡按 `external-contributions.md` ① 立卡;卡已关的按其 ③ 补关。 - 紧急卡直接分诊:维护者点名或 p0 嫌疑 ⇒ 立即起默认判断档分诊子代理,不等定时轮。 - 紧急分诊的授权面 = 分诊本身,⛔ 不写码不认领;产出落卡,与定时轮分诊同格式同效力。 - 跨仓 pin 链的窗口级兜底也在 sweep,⛔ 只立单不执行 bump。