Skip to content

finding(pm-dispatch): the new timestamped-reading rule has no gate and nothing in the round-open sequence re-reads the skill — its first live test was violated 12 minutes after it landed #14929

Description

@huangyiirene

Filed unassigned by the triage seat (R+118). Recording + measurement only — ⛔ no severity asserted, no fix chosen. ⛔ Self-implicating: the violation measured below is my own. Per this seat's standing practice I file the facts and ⛔ recuse from grading it — no priority, no domain, no recommendation from me.

The rule

PR #14784 (commit 1596b4c58, merged 2026-09-03T07:48:45Z) added to .claude/skills/pm-dispatch/SKILL.md:166-171, on maintainer ruling 2026-09-02, verbatim 「其他同意」:

同为成立条件 —— 板面/树/队列读数自带取数时刻:写进认领、派发令、复核、轮次报告、座位贴段落的读数恒带 UTC 时间戳(形如 2026-03T00:21Z),树读数另带 ref 或 tip;无时间戳的读数是格式错误不是现值,读者按未取处理 —— 改的是键入什么,不是要记住什么。

and beside it the remediation-shape ranking:

PM 侧失效的修法按序取:(a) 删掉容许出错的构造 → (b) 让正确形态成为协议唯一拼写 → (c) 加一条要记住的检查;(c) 型屡复发、(a) 型守住 —— 占位符禁令与本条取数时刻皆 (a) 型。

The measurement

Reading taken 2026-09-03T10:37:51Z, tree origin/main 431979e:

  1. git grep -rln "取数时刻|timestamped reading|UTC 时间戳" -- scripts/ .github/0 files. There is no gate.
  2. git grep -rn "取数时刻" over the whole tree → 2 hits, both SKILL.md:166 and :171. The rule exists in exactly one place: the prose a seat is expected to have read.

The first live test, and it failed

This seat opened R+118 at 2026-09-03T10:25:34Z — 2h37m after the rule landed on main, with the text already on origin/main. The round-open marker (objectstack#6015, comment 5524293471, posted 2026-09-03T10:31Z) states a board reading as a table:

| finding box, OPEN | count |
| objectstack | 2 |
| objectui | 92 |

No timestamp. Under the rule as written that reading is malformed, and a reader must treat it as untaken — in the very artefact the rule names first ("轮次报告"、"座位贴段落").

I did not find the rule by reading the skill. I found it through the governed-merge audit, at the end of the same round, because PR #14784 touched .claude/** and therefore printed as a governed entry. Had the change touched a non-governed path, this seat would have finished the round without ever learning the rule existed.

The observation, stated narrowly

⛔ Not a claim that the rule is wrong, and ⛔ not a claim it is mis-classified — the ranking's own note calls it (a)-type, and declaring an untimestamped reading malformed rather than merely incomplete is a real (a)-shaped move: it removes the construct's validity rather than asking anyone to remember something.

The narrow fact is about delivery, not the rule: a protocol change to a standing seat's own governing file reaches that seat only when it next re-reads the file, and nothing in the round-open sequence causes a re-read. The mutual-exclusion four-reads that every round does perform read the seat post, not the skill. So the interval between "rule lands" and "seat obeys it" is unbounded, and its actual first value here was "never, within the round" — recovered only by an audit that happened to cover the path.

⇒ Under the ranking the rule itself records, "the seat should remember to re-read the skill" would be a (c)-type answer to that delivery gap, and (c) 型屡复发.

What I did NOT measure

  • ⛔ Whether other PM seats picked the rule up this round. I read no other seat's round reports; this is one seat's data point, not a population.
  • ⛔ Whether a gate is even feasible. The readings the rule governs are free prose in issue comments, and I did not look for whether any existing gate reads comment bodies at all.
  • ⛔ Whether .claude/skills/** changes already trigger a notification path I am simply not on.

Related

#14784 (the PR that landed the rule) · #14867 (governed-audit scope: an unconfigured repo produces no row at all — same family: the audit is how this seat learns things, and its coverage bounds what can be learned) · #13562 (a maintainer-ruled archive whose "intentional" state is invisible on the label face — the same delivery-versus-state distinction).

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions