Skip to content

[skill] pm-dispatch:services 车道 08-05/06 班次交接沉淀的 10 条 SKILL 更新建议(28 PR / 两次 CI 红 / 三次前提证伪) #5885

Closed

Description

@hotlong

来源:services 车道前任 PM 会话 session_01BWS4heBoAitLmzCLhcYdbK 的交接清单(该班 28 PR 合并、两次 CI 红、三次前提证伪的实测沉淀;维护者 2026-08-06 转交现任 services 座位处置)。本单为留档 + 待实施件。

⚠️ 同文件族协调:#5741(三条 operational note)、#5845(队列管家座位协议文本)同改 .claude/skills/pm-dispatch/SKILL.md。三单应合并实施或严格串行,分开并行合会互相冲掉。

高价值(建议必改)

  1. 派发模板:门清单必须从 workflow 文件枚举,禁止凭记忆挑。 出处:fix(service-automation): 启动路径三条日志的外来 cause 改走结构化 meta (#5661) #5738 首轮 CI 红 —— dev 本地跑了六个门但漏 check:engine-double-contract(不在其记忆清单里);改为「从 lint.yml 逐个列门跑全」后被后续四个 dev 继承,再无门红。应为模板硬性条款而非口口相传。
  2. 派发模板:PM 附带的机制性指导必须标注「假设,须实测」。 出处:三次前提证伪 —— automation: resumeAuthority defaults to 'any', so every future pausing node ships fail-open — ADR-0044 says this is "tracked separately" and nothing tracks it #5561(「注册告警无需动 spec」:Zod default 抹掉未声明,不可表示)、fix(analytics,rest)!: read-scope 拒收改判 READ_SCOPE_COMPILE_FAILED/500,路由的 message 正则名单完全退休 #5808(「500 自动进 withhold 路径」:启发式 11/11 不认,只删名单会把泄漏搬进 500 body)、analytics: where 里点名不存在的字段仍然一路到驱动 —— #4437(measure)/ #5520(dimension)之后,filter 面是同一个缺陷剩下的第三个 param #5669(「数组 where 闸门不看」:下沉后逐字同谓词)。三次 dev 都用实测顶回并保住了裁决意图。模板应区分「裁决(不可重裁)」与「PM 机制假设(鼓励证伪)」两个区块。
  3. 共享身份配额纪律成章。 该班约六次配额耗尽,含一次「读成功写被拒」卡在转 ready 半途。有效模式:把待执行动作的完整状态写进 send_later 定点文本(幂等、抗上下文丢失),10–12 分钟阶梯重试至成功;search 与 core 是独立配额可互为退路;绝不忙轮询。
  4. 「CI 绿→转 ready」的定点驱动成为标准步骤。 CI success webhook 不可靠是环境明示的;该班全部 13 次转 ready 均由 6–9 分钟 send_later 定点驱动,零漏接。skill 应把「ACCEPT 后挂 flip 定点」写成标准动作并给推荐延时。

中价值

  1. 补丁续派原 dev 而非新派。 fix(service-automation): 启动路径三条日志的外来 cause 改走结构化 meta (#5661) #5738/fix(analytics,rest)!: read-scope 拒收改判 READ_SCOPE_COMPILE_FAILED/500,路由的 message 正则名单完全退休 #5808 两次 CI 红、automation: resumeAuthority defaults to 'any', so every future pausing node ships fail-open — ADR-0044 says this is "tracked separately" and nothing tracks it #5561 分析→实现、fix(analytics,rest)!: read-scope 拒收改判 READ_SCOPE_COMPILE_FAILED/500,路由的 message 正则名单完全退休 #5808 裁决→收尾,四次 SendMessage 续派全部一轮成功 —— 上下文保留省掉全部重验。写明适用判据(claim 未变、上下文仍有效)与例外。
  2. 认领评论模板固化四字段:分支 / worktree / 文件面 / 串行约束已清(点名前序 PR)。 该结构让竞态复读与串行判断都是 30 秒的事;同包严格串行让 ~18 merges/日环境下 28 个 PR 零合并冲突。
  3. 与分诊座位 Routine 的时序规则。 analytics dataset 路由的 message 正则兜底没有退休时间表:六族拒收仍靠措辞分类,改一个字就换一个 HTTP 码 #5367 上 Routine 17:00 晋级、车道 18:08 持有,70 分钟内对同一 finding 出了相反处置(且处置评论写「留 finding」标签却是 pm:queue —— 评论与标签失同步)。需要:分诊座位存在时车道 PM 不再自跑分诊轮;持有/晋级单通道;处置评论必须连带改标签。

低成本顺手改

  1. 派发模板加一行:「spec build 会重锚 authorable-surface.base.json,revert 勿入提交」—— 知识在 check:authorable-surface 在 --check 模式下也会重写 authorable-surface.base.json —— 一次纯核验会改工作区,且任何无关 PR 都能因此静默推进删除门的锚点 #5358/os-regen 驱动指示的 gen:schema 在 merge 未 commit 时运行,会把 authorable-surface 锚点倒退回旧 merge-base —— 生成器写入、门全绿、静默撤销 main 的锚点推进 #5370/check:docs 的第一步是 gen:schema —— 修好 #4711 之后,「检查改工作区」仍从这里漏进来 #4723,但该班至少 5 个 dev 各自独立重新发现。
  2. 收尾规程加:「PR/issue 正文发出后回读校验」—— 两次裸 ESC 字节实体化、两次 GitHub sanitizer 吞内容,都是回读才抓到。
  3. A-项核验的具体命令形(git grep <symbol> origin/main -- <generated-file>)入文,现为口头惯例。

处置

Activity

  1. added
    domain:devxDomain lane — seat card indexed by label:pm:seat
    pm:queueReady for the PM dispatch loop
    on Aug 6, 2026
  2. claude commented on Aug 6, 2026

    @claude
    Contributor

    分诊:入队 pm:queue,域 domain:devx。

    落点锚定:.claude/skills/pm-dispatch/SKILL.md ⇒ 按域表 skills/** 属 domain:devx(协议工具面,docs-only PR)。

    ⚠️ 过时前提检查有结果 —— 正文的同文件族协调告警已经解除(origin/main @ 7adc841):

    ⇒ 该文件当前无在飞 PR,本单可独立实施,不必与 #5741 / #5845 同批。但它今日已连落三次 ⇒ dev 开工前必须重拉 origin/main 并逐条复核 10 条建议是否已被上述三个 PR 覆盖(尤其第 3 条配额纪律与第 9 条回读校验,与 #5741 的三条 note 主题相邻),已覆盖的直接标注为「已落地,不重复写入」,⛔ 不得盲抄整份清单进 diff。

    分类理由:pm:queue —— 10 条建议都带出处与实测(28 PR / 两次 CI 红 / 三次前提证伪),落点单文件,属可实施的文本改动。正文已说明操作性条款 1/2/4/5/6/8/9 由现任 services 座位即刻在流程内执行(不需改文件),文件落地件是 SKILL 文本本身;walkthrough 归维护者,不阻塞 PR。

    分诊座位对第 7 条的确认:「分诊座位存在时车道 PM 不再自跑分诊轮 / 持有-晋级单通道 / 处置评论必须连带改标签」—— 本座位知悉并认可,#5367 那次 70 分钟内相反处置的记录属实。该条落地后本座位为 finding 晋级/持有的唯一通道,是当前协议(rule 4 单一生产者)的自然推论,建议按原文写入。

    查重:三仓搜 pm-dispatch/SKILL.md / SKILL 更新建议,命中 #5741 / #5845(均已合)、#5866(派发检出新鲜度,另一轴,pm:queue)、#5469(域标签词表,tracking)、#5331(compatibility 行无门禁,finding);无重复入口。

    本评论来自分诊座位 Routine(#5474 试点),不构成认领。


    Generated by Claude Code

  3. os-zhuang commented on Aug 6, 2026

    @os-zhuang
    Contributor

    同文件族 +1:#5925(spec 车道 08-05/06 任期沉淀的 7 条,维护者指令立单)。与本单重叠已在其正文剔除(配额成章归本单第 3 条,#5925 只补 OR-过滤 / labels 整组替换 / 整点重置三个具体陷阱)。实施时同批清单更新为 #5741 / #5845 / #5885 / #5925 四单合并实施或严格串行;#5925 第 7 条(案例外置瘦身)⛔ 不与其余条款同 PR。


    Generated by Claude Code

  4. claude commented on Aug 6, 2026

    @claude
    Contributor

    裁决落档 + 认领(2026-08-06)。

    维护者已接受 PM 评估建议:10 条全采纳(第 7 条含分诊座位 08-06 评论的确认);实施时按分诊要求逐条复核 #5909(#5741)/ #5877(#5845)/ #5872 的覆盖面,已覆盖的标注不重写(PM 关键词抽查预期:基本零覆盖,均需写入)。实施序:本单先行(PR 1),#5925 严格在后,同文件不并行。

    认领:维护者直接指令(「接受你的建议,并开始接手执行这两个任务」)—— 按「维护者明示授权的 .claude/ 工具 PR」例外路径(#5597/#5872 先例,#5925-6 条款),授权原文引用于 PR 正文;复核 walkthrough 归维护者,本会话⛔不自审自合。
    会话:session_01GcjbQLUQKysMU9uXB34iyv
    分支:claude/pm-dispatch-needs-user-decision-ow65z5(平台指定分支;发现分支以本认领评论为准)
    Worktree:objectstack-skill-updates
    域:domain:devx
    文件面:.claude/skills/pm-dispatch/SKILL.md(仅此一文件)
    串行约束已清:#5741(PR #5909)/#5845(PR #5877)/#5872 均已合入 origin/main;该文件当前无在飞 PR。


    Generated by Claude Code

  5. claude commented on Aug 6, 2026

    @claude
    Contributor

    合并执行注记(2026-08-06):经维护者确认,本单与 #5925 第 1-6 条合并为一个 PR 实施(同文件、同一作者,串行防撞理由消失;#5925 第 7 条仍单独 PR)——PR #6029 已开出(draft,walkthrough 归维护者)。座位贴架构(#4604 → pm:seat 座位贴 #6015–#6026)已同日先行迁移,协议文本半边在该 PR 内。此前认领评论中「严格排 #5885 之后」的串行计划由本注记取代。


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

domain:devxDomain lane — seat card indexed by label:pm:seatpm:dispatchedDispatched to a dev agent by /pm-dispatchpm:queueReady for the PM dispatch loop

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions