You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Finding class (b) — a contract violation the moment PR #19144 (#19133) lands: AGENTS.md Prime Directive #14 then says Tier S = all of .claude/** lands on the owning seat's contract-tier review of record, while three instruction lines still spell the pre-#19133 split (fact layer = .claude/skills/pm-dispatch/references/ only, everything else rules layer):
仪器 question (北极星「仪器为车队服务」): which fleet decision differs — a dev on a Tier S card (any .claude/** path outside references/) reads :286 「余为规则层」, writes a 速读(草稿) it does not owe and reports its PR as awaiting the maintainer's word; the seat lands it on the record anyway, so the cost is the dev's PR shape and a false status line, not a lost landing. Small ⇒ p3 (not on the path, not on the checklist).
Scope (line-neutral; os-dev.md ceiling 403, landing-operations.md 69; every line ≤120 B):
H48 → 速读 expected on Tier H only (governedTierFor from check-governed-merges.mjs, no second list); one self-test case: a Tier S PR without a 速读 is no finding, a Tier H one without it still is.
H43 → same file, same change class as item 3, so the two ride together in ONE half-states PR: read governedTierFor on the paths H43 has already matched — a LAZY import, because that row travels to sibling repos — and either stand the row down on Tier S or re-aim it at the at-tier record instead of an approval; one pnpm check:pm-half-states self-test case. ⛔ Not under a docs-only Tier S record: the at-tier review of PR fix(pm): repair two carriers still spelling the superseded references-tier boundary #19379 (record 5751616940) ruled that PR NOT incomplete for leaving H43 here, because H43 is missing LOGIC in a non-governed instrument rather than a stale spelling.
Acceptance: grep -rn 事实层 .claude AGENTS.md → only quotations; the three files' line counts unchanged; pnpm check:pm-half-states green with the new case; pnpm check:pm-skill-ratchet, check:pm-skill-id-lint, check:skill-frame-sync green.
Path: none
Finding class (b) — a contract violation the moment PR #19144 (#19133) lands:
AGENTS.mdPrime Directive #14 then says Tier S = all of.claude/**lands on the owning seat's contract-tier review of record, while three instruction lines still spell the pre-#19133 split (fact layer =.claude/skills/pm-dispatch/references/only, everything else rules layer):.claude/agents/os-dev.md:286 「受管路径全在.claude/skills/pm-dispatch/references/者为事实层,席位复审即记录;余为规则层。」 and :287 「规则层 PR 正文带## 维护者速读(草稿)节 …;事实层不欠。」.claude/skills/pm-dispatch/references/landing-operations.md:27–:28 — the same split; :26 is HELD by PR feat(pm): a PR over 5,000 changed lines lands only by a human merge — size predicate in check-governed-merges --test, the same reading in dispatch-gates, one rule line in SKILL.md and landing-operations #19033 (feat(pm): the Prior rulings read: line covers the card’s own thread — tool corpus half and charter :339 in one batch #19021), so this line lands after it.scripts/pm/check-half-states.mjsH48 expects a## 维护者速读on every accepted governed PR; on a Tier S PR that brief has no reader.scripts/pm/check-half-states.mjsH43 is tier-blind by the same instrument: over the row's span it readsGOVERNED_APPROVERSand nevergovernedTierFor(0tier/Tier/landingTierhits), so it decides 「asked NOBODY」 from approvers alone and prescribes an authorized approval — the very click skills(governed): narrow the human-merge floor to the law — Tier H stays human/approved (AGENTS.md · CLAUDE.md · docs/adr/** · docs/NORTH-STAR.md · .claude/settings.json · .claude/hooks/**); Tier S (.claude/skills/** · .claude/agents/**) lands on the seat's CONTRACT_REVIEW_TIER PASS + post-merge audit #19133 abolished — on a Tier S PR too. Its rationale 「the queue guard still refuses an unapproved governed enqueue」 is falsified for Tier S by PR feat(pm): secondUnlock-action:value — a label-transition exit on a named card (#19255) #19351 (all-.claude/**plus ascripts/pm/script, 0 reviews, merged231283a6e2on a review of record). Measured in comment 5750573385 and confirmed independently by the at-tier review 5751616940.仪器 question (北极星「仪器为车队服务」): which fleet decision differs — a dev on a Tier S card (any
.claude/**path outsidereferences/) reads :286 「余为规则层」, writes a 速读(草稿) it does not owe and reports its PR as awaiting the maintainer's word; the seat lands it on the record anyway, so the cost is the dev's PR shape and a false status line, not a lost landing. Small ⇒ p3 (not on the path, not on the checklist).Scope (line-neutral; os-dev.md ceiling 403, landing-operations.md 69; every line ≤120 B):
.claude/**者 Tier S,席内达档复核 PASS 在案即落地;Tier H(AGENTS.md、CLAUDE.md、docs/adr/**、docs/NORTH-STAR.md、发布skills/**)才带## 维护者速读(草稿).mainfirst).governedTierForfromcheck-governed-merges.mjs, no second list); one self-test case: a Tier S PR without a 速读 is no finding, a Tier H one without it still is.governedTierForon the paths H43 has already matched — a LAZY import, because that row travels to sibling repos — and either stand the row down on Tier S or re-aim it at the at-tier record instead of an approval; onepnpm check:pm-half-statesself-test case. ⛔ Not under a docs-only Tier S record: the at-tier review of PR fix(pm): repair two carriers still spelling the superseded references-tier boundary #19379 (record 5751616940) ruled that PR NOT incomplete for leaving H43 here, because H43 is missing LOGIC in a non-governed instrument rather than a stale spelling.Acceptance:
grep -rn 事实层 .claude AGENTS.md→ only quotations; the three files' line counts unchanged;pnpm check:pm-half-statesgreen with the new case;pnpm check:pm-skill-ratchet,check:pm-skill-id-lint,check:skill-frame-syncgreen.Blocked-by: #19133
Blocked-by: #19021
Surfaced by the #19133 dev's out-of-scope findings (report 5737300613); filed by the skills seat under lanes/skills.md's self-triage rule.
Generated by Claude Code