From 6557bc1bb6c465f0d583d57a86108de3dcff780f Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 1 Sep 2026 02:16:20 +0000 Subject: [PATCH] skills(pm): encode the clear-equals-land arm preconditions in contract-review.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The 清标即落地 section stated the release ACTION but carried no walkable precondition list. It now carries the three arm preconditions — an in-seat at-tier PASS on record, `needs:contract-review` cleared on both carriers, and ALL of the PR's checks green (never the required subset) — plus the per-pair mechanical reading (`check-clause2-carriers --pair`) with its exit register, the provenance-comment requirement on arm, and the unchanged governed-surface boundary. Funded in place by the one real deletion the surface had: the downgrade-fuse bullet restated the served-tier reading that platform-readings already single-sources, while carrying a pointer at it in the same breath; that restatement collapses to the pointer (4 lines to 3). The residual raises the line ratchet 57 to 60 under the maintainer ruling quoted in the PR body. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01Msg17tAHJ3jVTYFgHydCm2 --- .../pm-dispatch/references/contract-review.md | 11 ++++++---- scripts/pm/check-skill-line-ratchet.mjs | 20 ++++++++++++++++++- 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/.claude/skills/pm-dispatch/references/contract-review.md b/.claude/skills/pm-dispatch/references/contract-review.md index 3bbdc10608..760942651e 100644 --- a/.claude/skills/pm-dispatch/references/contract-review.md +++ b/.claude/skills/pm-dispatch/references/contract-review.md @@ -36,6 +36,10 @@ 只进决策箱,⛔ 永不自裁 —— 真正设计分叉照旧升级维护者;轮报设**复审清单**专节(同代 裁清单强制审计形状)。**三样不变**:受管面照旧 draft-only + 终局两条(人工直合或授权批准 钉 head 入队,单源见主文件)、⛔ 席位永不代批;FAIL / REWORK 原样;降档保险丝原样。 +- **落地前检三条**(维护者 2026-08-31「同意」):① 席内契约档 PASS 在案(卡上达档裁决评论);② + `needs:contract-review` 双载体已清;③ PR 全部 check 全绿(⛔ 非 required 子集)。② 逐对机读 + `node scripts/pm/check-clause2-carriers.mjs --pair PR-NUMBER`:0 双肢可读且一致 · 4 不一致 · 3 环境答不 + 了 ⛔ 不作干净。转 ready 同笔留 provenance 评论引该 PASS;受管面不适用,draft-only 终局不变。 - **外部评审链降为可选**(改写 2026-08-27「契约复审也是很重要的职责,也是需要定时处理 的」所立的定时轮常设归属):分诊定时轮与总监席召唤非放行必要条件,在线时作**事后审计/抽 查**,其裁决仍被尊重 —— 审计 FAIL 按状态机 label-flip 交回派发席补丁轮;⛔ 不与席内复核 @@ -43,10 +47,9 @@ ## 降档保险丝(机读) -- 席内复核/审计每场前**必调一次 `get_session`**(claude-code-remote MCP,无参)读 - `external_metadata.last_served_model`,⛔ 自述档位不是读数(静默降档腐蚀的恰是自述;实测与配 - 置档陷阱见 platform-readings);读数 ≠ `CONTRACT_REVIEW_TIER` ⇒ 本席 ⛔ 不自判清标,改走转录 - 核验的 fable 复核子代理 —— 标签在复核完成前原样留置,卡在队列外等待是安全态。 +- 席内复核/审计每场前**必读一次服役档**(读法与陷阱单源见 platform-readings),⛔ 自述档位不 + 是读数(静默降档腐蚀的恰是自述);读数 ≠ `CONTRACT_REVIEW_TIER` ⇒ 本席 ⛔ 不自判清标,改走 + 转录核验的 fable 复核子代理 —— 标签在复核完成前原样留置,卡在队列外等待是安全态。 - **保险丝只测座位自会话**:`mode:subagent` 里的 `get_session` 量的是**派发会话**(实测: 钉在地板档的子代理读回父档,⛔ 不作互证),传参只是配置 ⛔ 不作达档读数; 条款②的 `mode:subagent` 派发照旧恒保留 `needs:contract-review` 至席内复核完成。 diff --git a/scripts/pm/check-skill-line-ratchet.mjs b/scripts/pm/check-skill-line-ratchet.mjs index 11201ab618..55c25af5d6 100644 --- a/scripts/pm/check-skill-line-ratchet.mjs +++ b/scripts/pm/check-skill-line-ratchet.mjs @@ -248,7 +248,25 @@ export const CEILINGS = new Map([ // or folded; the residual +6 could not be paid without deleting ruled clauses // (refused on the state-machine precedent). Landed count, headroom 0, same // convention. - ['.claude/skills/pm-dispatch/references/contract-review.md', 57], + // Raised 57 → 60 by the clear-equals-land CRITERIA encoding — the 清标即落地 + // section gains the arm-precondition list it never carried: an in-seat at-tier + // PASS on record, `needs:contract-review` cleared on BOTH carriers, and ALL of + // the PR's checks green (never the required subset), with the per-pair + // mechanical reading (`check-clause2-carriers --pair`) and its exit register, + // and the governed-surface boundary restated as unchanged. The rule is the + // 2026-08-31 director batch #17 ruling, verbatim and untranslated: 「同意」, + // which ordered the text into THIS file and THIS section; the raise itself is + // authorized by the maintainer on 2026-09-01, director decision batch A, + // verbatim and untranslated: 「同意。」 — that ruling also chose the FULL + // encoding over the 58-line bare minimum, so the two extra lines are ruled + // content, not slack. Paid in place first: the downgrade-fuse bullet's + // restatement of the served-tier READING collapsed to the platform-readings + // pointer it already carried (4 lines → 3, 437 B → 353 B), the one real + // deletion the surface had; the residual +4 could not be paid without deleting + // a ruled clause, and the nearest candidates were the governed-surface + // boundary and the terminal clause (refused on the state-machine precedent). + // Landed count, headroom 0, same convention. + ['.claude/skills/pm-dispatch/references/contract-review.md', 60], // Business-perspective decision-analysis writing guide (maintainer ruling // 2026-08-20: the four-facet analysis must argue from the business // standpoint). Set at landed line count (headroom 0, same convention).