Skip to content

docs(pm-dispatch,os-dev): 认领、查重、标签与验证方法论纪律修订 —— 用本周期三起真实事故固化 (#5166) - #5174

Merged
xuyushun441-sys merged 1 commit into
mainfrom
claude/issue-5166-skill-discipline-revision
Aug 4, 2026
Merged

docs(pm-dispatch,os-dev): 认领、查重、标签与验证方法论纪律修订 —— 用本周期三起真实事故固化 (#5166)#5174
xuyushun441-sys merged 1 commit into
mainfrom
claude/issue-5166-skill-discipline-revision

Conversation

@xuyushun441-sys

Copy link
Copy Markdown
Contributor

Fixes #5166

改动仅限 .claude/ 下两个文件(+ 一个空 frontmatter changeset,按仓库先例满足门禁,见 e001a1f 等三例)。每条纪律都放进它所属的既有章节,不另起附录;事实细节全部从各 issue 的评论链核实后引用。

纪律 ↔ 事故实证对照表

pm-dispatch/SKILL.md

纪律 落点章节 事故实证
选单前读完全部评论——裁决落在评论区 Round loop step 1 #4829:PM 只读正文建议删"隐藏访问门"并派发;评论区有维护者 2026-08-03 暂缓处理记录,且该门是 ADR-0045 §3(Accepted)机制、带 4 条 pin 测试;dev 停手拒做才拦下
立单前查重(关键词/CVE 号/包名/报错串各搜一遍);issue 级重复无门禁可拦 Operational notes 第 9 条(八条扩为九条) #5039:未搜索即为 OSV 公告立单,#5032 六分钟前已立且分析更全,两分钟后关 duplicate;两条单各吸走一次认领,直接诱发撞车。同日 #4946/#4945 同型
认领 = assign + 含 session ID 与分支的评论,成对原子落地,限流不许拆;分支名必须含 issue 号 Step 4 Claim item 2 #5032:后到认领发出前未重读评论;败方分支名不含 issue 号,git ls-remote 查不到(#4588 旧坑重开)
assign 后动手前重读评论区;session ID 时间戳是唯一判据;让路 = 完整交接诊断 Step 4 Claim item 3 #5032:两条认领相隔 20 秒,双方落点都是 lockfile;dev 开工前重读评论自行让路、零文件改动,交接诊断(离线 scanner 复现、逐包 pnpm why、override 上界自我失效实证)被胜方直接消费,26 分钟后 PR #5052 落地
标签语义表:needs-user-decision = 决定待做(可催问);pm:on-hold = 决定已做、暂缓(不催问);挂 on-hold 必配日期/理由/重启条件三要素评论 State model 表 + 新增 Label discipline 块;one-time setup 增建两标签 #4829:暂缓裁决只存在于评论中,标签仍是 needs-user-decision,后续 sweep 读到的是"决定还没做",会重复催问已答过的问题
pm:blocked + 正文 Blocked-by: #N;阻塞单关闭时扫描解锁;标签消费者原则;状态变更不过夜 同上 半状态(标签挂了评论没落 / assign 了没留认领评论)正是 #5032 撞车与共享身份不可判读的根源
派单措辞:issue 正文是线索不是规格;premise_still_valid:false 且无 PR 是合法产出 Step 5 模板新增一条 + 配套 prose;step 7 与 report contract 同步增字段 #4832(派下去才发现前提已失效)、#4250(最低诉求早已由 stall-guard 系列覆盖,验证反而挖出 guard 的 SIGKILL 路径从未执行过)、#5047(「重启即失」被 file:line 证据推翻,收窄为 empty-env seed 真 bug → PR #5117)、#4930(三分之二"报绿"claim 不成立,按实测收窄)

agents/os-dev.md

纪律 落点章节 事故实证
issue 正文是线索不是规格(missed-rules 新增第 6 条 + 报告契约增 premise_still_valid) 规则列表 / JSON contract #4832#5047(同上表)
反向验证三向判据:红(常规)/ 增多(别名喂 COUNT)/ 倒转(规则越权、schema 才是门)—— 跑之前先想清方向 新增 Reverse verification 块(Definition of done 之后) 增多:PR #5046 的 referenceTo 计数 1→0 使下游 gate 新增诊断,如实 pin;倒转:#5009 / PR #5018,任务书预设 before绿/after红,dev 如实报告方向相反;家族起源 #4984(fixture 用被拒别名,测试绿而规则死)
key-vs-value 可达性判据:守"键不可达"用 unrecognized_keys,守"值判决"用完整 safeParse 同上 PR #5046 明写了这条区分——照抄 #5018 的全绿判据会删掉四条正当规则
fixture 三分法:re-spell / add-declaration / replace(判决 1→0 时整体替换) 同上 PR #5046 的 runtime-gate 减法用例"绿因无物可减";#5096 预先点名 validate-rule-compilability.test.ts:295 同命
消费半径扫描:按规则的消费半径扫 fixture,不按被改包边界 同上 PR #5046 唯一一次返工:改在 lint 包,坏 fixture 在 cli 包的 parity 测试里用被拒别名
工具链陷阱四条:workspace-concurrency 位置与拼写、fresh-worktree 先 build 依赖、overrides 只认 pnpm-workspace.yaml、OSV override 上界压 major 边界 新增 Toolchain traps 块(Resource discipline 之后) #5047 复核记录"一个会话四个 agent 踩过 concurrency 坑";#5032 的 undici 排他上界恰在 7.28.0 出公告时自我失效(#4961 预言的活体)
字节纪律:控制字符一律写转义文本、绝不落原始字节;PR/issue 正文避免小于号+字母;门禁盲区自扫 原 sanitizer 段扩写为 Byte discipline 块 #4763(派发文 NUL)、#4890(写"不许裸 NUL"规则时落了一个裸 NUL)、PR #5140 两枚(NUL + 0x01)、#5157(0x01 在门禁扫描面外)。本 PR 实施中该事故复现了第五次:写字节纪律段落时,工具调用 JSON 把转义物化成真字节落进 os-dev.md,自扫抓出、按字节级替换修正——这正是"写规则时最容易违反规则"的又一实证,细节见下
模板是工具不是真理:字段预设不合身时明说,不造合模板的证据 Report 契约段落 #5009 复核明确嘉奖 dev 拒套模板、如实报告反向验证方向相反

自证

🤖 Generated with Claude Code

https://claude.ai/code/session_018iARDqtrhQgz6fVHDeDkbQ


Generated by Claude Code

@vercel

vercel Bot commented Aug 4, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
objectstack Ignored Ignored Aug 4, 2026 7:32am

Request Review

@github-actions github-actions Bot added documentation Improvements or additions to documentation tooling size/m and removed documentation Improvements or additions to documentation tooling labels Aug 4, 2026
@xuyushun441-sys
xuyushun441-sys marked this pull request as ready for review August 4, 2026 07:33
@xuyushun441-sys
xuyushun441-sys added this pull request to the merge queue Aug 4, 2026
Merged via the queue into main with commit 9737e0c Aug 4, 2026
19 checks passed
@xuyushun441-sys
xuyushun441-sys deleted the claude/issue-5166-skill-discipline-revision branch August 4, 2026 07:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

chore(agents): pm-dispatch / os-dev 纪律修订——用本周期三起真实事故固化认领、查重、标签与验证方法论

2 participants