Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude/agents/os-dev.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ model: opus
5. ⛔ 永不按进程名杀(`pkill -f` 会带走并行 agent 的运行);记下你启动的 PID,只对它操作。
6. **整条流水线在前台跑。** build 与 test 都是本任务的步骤:阻塞运行、读真实输出、继续。
- 宿主事实:你启动的后台作业、watcher、你请求的通知都不会唤醒你;结束一轮就是结束。
- 有可展示内容即 commit、push 并开 draft PR,不等验证结束;验证结果到达即写进报告
- 每个可编译小步即 commit + push;有可展示内容即开 draft PR;接管只认远程分支最后 sha
- 带具名缺口的 PR 是交付进行中的常态,未读到的判决写 `NOT MEASURED: <family>, reason: …`。
- 平台事实:容器把前台命令钉在约 10 分钟上限,超时 SIGTERM 杀掉(`exit 143`)。
- 上限划定前台里放什么:重活走规则 1 的锁;仓级扫描归 CI(见本地验证范围节)。
Expand Down
20 changes: 8 additions & 12 deletions .claude/skills/pm-dispatch/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@ PM 的工作是循环:选卡 → 认领 → 派发 → 收集 → 复核 → 报
- 定时器文本 ⛔ 不写结论、不含未经重读即可执行的祈使句。
- 放行认门禁 job 的结论(`completed: success`),⛔ 不认聚合读数。
- advisory 门禁红着进 main 是共享损伤,任何车道发现都立即止血并立单,见 landing-operations B。
- dev 自己死了不等于维护者中止:子代理消失是正常死法,走死认领回收
- dev 自己死了不等于维护者中止:子代理消失是正常死法,走接管(见认领节)
- 维护者中止只认原话或宿主回报 stopped by the user,⛔ 不据推断立无重启条件的门。
- 共享基础设施修复入队前按症状复查 main,不按 issue 号。
- 立卡者不查重、只附 3–5 查重词;真撞上重复,先比数值与作用域再决定关哪个。
Expand Down Expand Up @@ -469,7 +469,7 @@ PM 的工作是循环:选卡 → 认领 → 派发 → 收集 → 复核 → 报

### 认领(先认领后动工)

- 共享身份下 assignee 只答有无认领;身份只认正文 session ID,⛔ 不认作者字段。
- 共享身份下 assignee 只答有无认领;身份只认正文 session ID,⛔ 不认作者字段,接管同此
- assignee 字段归 PM:原子对 step 1 设,dev 席恒不写它;跨账号 assignee 不是你 ⇒ 永不碰。
- 释放是显式动作:让卡离手者同笔清 assignee + `Release:` 行(会话/因/去向);下一任重新认领。
- 部分落地(PR 带 `Refs #N (item k)`,⛔ 不 `Fixes`)即释放:合入同笔回 `pm:queue` + 清 assignee。
Expand All @@ -489,16 +489,12 @@ PM 的工作是循环:选卡 → 认领 → 派发 → 收集 → 复核 → 报
- ③ 竞态复读:认领评论上墙后重读全线程;认领评论时间戳是唯一仲裁。
- 更早的评论带不同 session ID/分支 ⇒ 你输了,回 `already claimed — yielding` 另选。
- 让行是交接不是退场:连同让行评论交出已诊断的一切与已取的板面读数,赢家不必重扫。
- dev 侧早推分支,远程分支是在飞工作最硬的证据。
- 死认领回收:认领 >~24h ⇒ 疑死;判死主腿 = 搜引用本卡的 PR、读其 `merged`/`merged_at`。
- ⛔ 判死不读 closes-list;承诺分支缺席与提交扫描失效只能支持判死、永不单独确立。
- 零引用 PR ⇒ 停下发问,⛔ 不判什么都没落地。
- 回收前先救工作树:向任何派发 worktree 提交前先过存活/所有权检查。
- 或对树最新 mtime 过明确年龄阈值;⛔ 不凭 GitHub 侧静默动手。
- 过栏后,派发 worktree 的未提交改动先 WIP commit 到派发分支并 push,sha 记进回收评论。
- WIP commit 标 INCOMPLETE AND UNREVIEWED;续派者 diff 它,⛔ 不无审续建。
- WIP 信息只写观察到的(脏路径/行数/sha),⛔ 不写席位行为的现在时断言。
- 再评论询问,静默一窗后释放回队(`Release:` 行载因);有带提交活分支的认领永不回收。
- dev 每个可编译小步即 push:容器随会话回收,未 push 的树救不回,可交接的只有远程分支。
- 认领人不可达(token 耗尽/会话结束/身份退役)⇒ 接管:一条评论四件齐,⛔ 不判死活。
- ① 跨账号 `Release:` 点名被撤认领的 id 与 session ID,带出处三件(谁的指令/原话/在哪说)。
- ② assignee 同笔换人(`--unassign 旧 --assign 新`);③ 新 `Claim:`:新 session、续用分支与远程 sha。
- ④ 交接记录:旧分支最后已 push 的 sha + 一句状态;读者只验①③形状,缺一件即非撤销。
- C9 只剩一种红:无任何 `Release:` 的跨账号 `Claim:`(真抢卡);线程上每条活认领都要点名。
- 误伤活席位 ⇒ 令其追加式更正,落 PR 正文不落分支历史。

### 派发
Expand Down
4 changes: 2 additions & 2 deletions .claude/skills/pm-dispatch/references/core-rules.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,8 @@
- 两张以上排队卡共享热文件时,必须以五门为判据显式回答折叠还是串行。
- 取卡全序:插队卡、有下游依赖者的卡、板上项、p1、p2、p3、无级;同级缺陷卡先再卡龄。
- 认领原子对:一次标签写入完成认领与状态对调,随后留 `Claim:` 开头的评论并重读全线程。
- 更早的他会话认领即让行并交出已诊断的一切;认领逾一天且无合并证据即疑死
- dev 自死不等于维护者中止,需显式信号;回收前先救工作树,有提交的活分支 ⛔ 永不回收
- 更早的他会话认领即让行并交出已诊断的一切;认领人不可达即接管,⛔ 不判死活
- dev 自死不等于维护者中止,需显式信号;接管一条评论四件齐,只救已 push 的分支
- 一单一次派发,档位逐卡显式传参;语义面卡恒契约复审档施工,契约复核只 spec、skills 欠。
- 派发词 ⛔ 不整段粘贴 issue 正文,只带增量,并要求子代理自查正文完整性。
- 派发词分三区:裁决不可重裁、机制假设须实测、建议路线可换,⛔ 不把假设写成裁决。
Expand Down
Loading
Loading