Skip to content

Commit b04d937

Browse files
committed
pm-dispatch(os-dev): every PR opens with a six-line maintainer brief; the seat's 席位核对 precedes pr_ready/enqueue; H69 patrols a summons that ran ahead of it
os-dev.md: the PR body opens, after the Fixes line and the two declaration lines, with `## 维护者速读` on every PR — six fixed lines (改了什么/为什么改/ 风险与回滚/先看/两分钟验证/需要你做的), Chinese, business angle, no 席位意见 line — then the English sections in a fixed order (What changes/Tests/ Acceptance notes/Verification) with every log reading folded into a details/summary block. Paid in place: three lines retired to homes they already had (push-and-backoff → rule 1; merge-main-after-PR → AGENTS.md §10; the three safe spellings → the keyword rule above them and review-checklist 安全拼法). pm-dispatch SKILL.md: the seat's record (six lines + 席位意见, then `## 席位核对`) is on the PR for the current head before `pr_ready` on Tier H and before a Tier S PR is queued; the seat-side twin lines are rewritten in place, no new line. check-half-states.mjs: H69, report-only — a governed Tier H open PR with an approver requested and no `## 席位核对` newer than its head commit; one bounded commit read per PR that carries a record; a self-test battery pinning the older-than-head / newer-than-head pair. H48's hint and fixture follow the renamed dev heading. Claude-Session: https://claude.ai/code/session_01LqKsGyMNFwwnbF5FTAqyPn Co-authored-by: Claude <noreply@anthropic.com>
1 parent f00cbe3 commit b04d937

3 files changed

Lines changed: 370 additions & 20 deletions

File tree

‎.claude/agents/os-dev.md‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -270,9 +270,7 @@ model: opus
270270
- driver/kernel 启动路径同此;那时跑 `--project integration` 并在报告里说明,否则写已声明给 CI。
271271
- 层是测出来的,不是列出来的:spawn CLI 或启动 driver 的测试按 `packages/cli/vitest-tiers.ts` 落。
272272
- 分区 pin `test/vitest-tiers-partition.test.ts` 在某个测试文件两层皆无或皆有时变红。
273-
- 用 `git push -u origin claude/issue-<n>-<slug>` 推上去,网络失败退避重试;pre-push 拒卡片 trailer。
274273
- Draft PR 指向 `main`,正文首行 `Fixes #<n>`;合并不应关卡时用 `Part of #<n>`,并说明留下哪一半。
275-
- PR 开出后合 main 只因冲突、main 致 CI 红、出队,后只跑 §10 复检。
276274
- 全量 dogfood 只在终 head 跑一次,仅当标题带 `!` 或 `Clause-②:` 带 `(narrowing)` 臂(yes/no 皆算)。
277275
- 命令同 CI:按 ① 建闭包,锁下 `pnpm --filter @objectstack/dogfood test`;⛔ 无 `OS_TEST_SHARD`、无路径。
278276
- 红 = 本改动的后果(陈旧 fixture)同 PR 修,余照报;⛔ 永不跳过或收窄;计数记 `dogfood_battery`。
@@ -281,12 +279,14 @@ model: opus
281279
- ⛔ 永不 `Fixes` 一张还在决策箱的卡:合并会静默关掉它,而收件箱过滤只读 open。
282280
- ⛔ 不写否定式的关单句,它照样关掉点名的卡:解析器无视否定,只匹配关键词 + `#<n>`。
283281
- 关键词是 `fix/fixes/fixed/close/closes/closed` 与 `resolve/resolves/resolved`;让它们远离其它卡号。
284-
- 写 `#<n> is not addressed here`、`out of scope: #<n>` 或 `#<n> remains open`。
285282
- 卡片关系只在 PR 正文声明一次:commit ⛔ 不带卡片 trailer,其 trailer pair 一律 model-free。
286283
- harness 归属提醒凭其优先级句让位本文件;harness 自写含模型名 trailer 只报,⛔ 不仿不改史。
287284
- 受管路径全在 `.claude/**` 者 Tier S,达档复核 PASS 在案即由席位入队落地;余皆 Tier H 等人批。
288-
- 受管面 PR 正文带 `## 维护者速读(草稿)` 节,中文、业务角度,席位意见留空;两层同欠。
289-
- 五段固定:改了什么/为什么改/风险与代价(含回滚)/席位意见/你要做的;席位定稿成评论。
285+
- 两声明行后 `## 维护者速读` 六行,受管与否都带,中文、业务角度,不写席位意见。
286+
- 六行固定:改了什么/为什么改/风险与回滚/先看/两分钟验证/需要你做的。
287+
- 先看 ≤3 文件按风险排,点名风险 hunk;两分钟验证 = 一条命令或一次点击,写预期所见。
288+
- 需要你做的恰一个动作,非受管面写「无,席位落地」;席位定稿成评论。
289+
- 英文节序:What changes/Tests/Acceptance notes/Verification;日志读数每子题折进 details/summary 块。
290290
- 触 `skills/**`(对外发布的技能包)的 diff:PR 正文报两个读数,并默认拒绝小功能大扩写。
291291
- 两个读数缺一不可:被改文件的整文件 before/after,与整包 before/after(全部 SKILL.md 之和)。
292292
- 行数为准,姊妹门禁定义 token 计数后同报 token。

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

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -185,13 +185,13 @@ PM 的工作是循环:选卡 → 认领 → 派发 → 收集 → 复核 → 报
185185
- 另含 `ui/docs/adr/**`+`ui/.claude/**`+`ui/skills/**`+`ui/AGENTS.md`+`ui/CLAUDE.md`+`ui/.github/workflows/**`。
186186
- 路径面命中 Tier H ⇒ ACCEPT 换终局四件套,混合 diff ⛔ 不按比例判;要拆让 dev 单独开 PR。
187187
- 改动 >3000 行(含生成物)同换终局四件套,⛔ 无 Tier S 例外;读数 = PR additions+deletions。
188-
- ① 席位记录一条落 PR,两层同欠:Tier H 置顶速读五段,其下 `## 席位核对`;卡只留指针行。
188+
- ① 席位记录落 PR 先于 `pr_ready`/入队且钉 head:速读六行+席位意见,其下 `## 席位核对`。
189189
- ② PR 悬着等人批,同笔挂 `needs-user-decision`;人工直合即审核记录,授权批准 ⇒ 席位落地。
190190
- 指针 `ACCEPT → PR #n comment <id>`;技能面 hunk 复核随面定档:席未达档起隔离达档复核。
191191
- 核对六项(席位读此):形态/前提实测/门禁 check-runs/接受的偏差/范围外去向/落地条款。
192-
- 速读五段固定:改了什么/为什么改/风险与代价(含回滚)/席位意见/你要做的(一个动作)。
193-
- 草稿归 dev:受管面 PR 正文带 `## 维护者速读(草稿)`,中文、业务角度,席位意见留空。
194-
- 终稿 = 席位对照自己读的 diff 校正草稿、填席位意见,置顶席位记录;维护者只读评论。
192+
- 速读六行固定:改了什么/为什么改/风险与回滚/先看/两分钟验证/需要你做的。
193+
- 草稿归 dev:每个 PR 正文带 `## 维护者速读` 六行,中文、业务角度,不写席位意见。
194+
- 终稿 = 席位对照自己读的 diff 校正六行、加席位意见行,置顶席位记录;维护者只读评论。
195195
- PR 上的标签 = 待维护者审阅,不入六态;与请审同为等人批清单,随获批或撤回判决离开。
196196
- 批准判定单源 = 队列守卫常量 `GOVERNED_APPROVERS`:授权账户 APPROVED 即算,⛔ 不卡 `commit_id`。
197197
- 批准后再推亦不过期;席位落地 = 过落地前检、清标、ready、auto-merge,踢出/变基同法。

0 commit comments

Comments
 (0)