diff --git a/AGENTS.md b/AGENTS.md index 634aa02e95f..539d10d88f2 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -276,8 +276,8 @@ localStorage / auth gotchas. the governed files. **The landing is tiered by the register; one Tier H path makes the whole PR Tier H.** **Tier H** (人合: every register row except `.claude/**`): those four lift only for an authorized APPROVED review by an account in `GOVERNED_APPROVERS`, on ANY commit and not dismissed; that word is - spent once per PR — the OWNING seat then lands it, later pushes included; the director seat requests the word as - ONE batch of at most five rows, and the click stays the maintainer's. **Tier S** (席内达档复核落地: all of + spent once per PR — the OWNING seat then lands it, later pushes included; the click stays the maintainer's. + **Tier S** (席内达档复核落地: all of `.claude/**`): those four lift once the PR thread or its card carries a `## Contract review` record for the PR's current head with `Served-tier: CONTRACT_REVIEW_TIER` and a PASS verdict and every check is green — the owning seat then lands it through the queue; the post-merge audit is the compensating control. A PR whose only governed diff --git a/scripts/pm/check-skill-line-ratchet.mjs b/scripts/pm/check-skill-line-ratchet.mjs index f4972939f81..812b2319906 100644 --- a/scripts/pm/check-skill-line-ratchet.mjs +++ b/scripts/pm/check-skill-line-ratchet.mjs @@ -600,7 +600,7 @@ export const CEILINGS = new Map([ // tails leave the corpus; one rule per ≤120-byte line, no rule already stated in // SKILL.md). Landed count, headroom 0, same convention (lowering is always // legitimate). - ['.claude/skills/pm-dispatch/references/decision-analysis.md', 50], + ['.claude/skills/pm-dispatch/references/decision-analysis.md', 49], // 134 → 133: whole-text restructuring round, PR-2 (maintainer ruling // 2026-08-23) — the three write-side sanitizer rows consolidated to one // author rule + one measured-behaviour row per surface (body / comment). @@ -1478,7 +1478,7 @@ export const CEILINGS = new Map([ // 「`lanes/director.md` 职责行」: the seat an app project summons reviews that // repo's business-rationale first touch. Measured +1, ceiling moved by +1; // recorded under the move below as a `ruledRaises` record. - ['.claude/skills/pm-dispatch/references/lanes/director.md', 88], + ['.claude/skills/pm-dispatch/references/lanes/director.md', 87], // Triage seat charter (maintainer ruling: the triage seat stays single; pickup // alternates between the two multi-lane repos, oldest-first inside a repo, with a // 4-hour starvation guard). A seat charter is read per seat session like every