Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .claude/skills/pm-dispatch/references/platform-readings.md
Original file line number Diff line number Diff line change
Expand Up @@ -282,6 +282,7 @@
- 判定跨天翻面 ⇒ ⛔ 一次拒绝不是能力边界;`permissions.allow` 条目才是仓库侧确定性通道。
- `rerun_failed_jobs` 复用原 run 的提交与合并 ref,不拿新 main 重算。
- ⇒ 基上缺已合修复时重跑无效,只能 `git merge origin/main` 推提交;判别看修复合并时间。
- 读数 2026-09-13:席位 REST `/jobs/{id}/rerun` 403、MCP `rerun_failed_jobs` 201 ⇒ 重跑可做,锁 1 未禁。
- 同一 head 上轻量兄弟 workflow `success` 加重量级载体 `cancelled` 是普通取代的预期签名。
- 同名 `failure` 也会被带另一诊断的后一次 `failure` 取代 ⇒ 任何判定前先按名取最新一次。
- cancel-in-progress 窗口只罩得住慢载体 ⇒ 先比对 run `head_sha` 与 PR 当前 head,不开调查。
Expand Down
36 changes: 35 additions & 1 deletion scripts/pm/check-skill-line-ratchet.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -888,7 +888,24 @@ export const CEILINGS = new Map([
// / refused 0. Nothing paid in place: the two lines sit beside the
// invalid-session pair they qualify. Landed count, headroom 0, same
// convention.
['.claude/skills/pm-dispatch/references/platform-readings.md', 453],
// Raised 453 → 454 by the FOURTEENTH readings increment, again under the
// STANDING one-file exception quoted above rather than a fresh decision
// card, and again recorded as a `ruledRaises` record citing it. Spent at ONE
// line for ONE deduplicated reading, written in this file's voice: a failed
// CI job's re-run is a CHANNEL split rather than a seat capability limit —
// the seat's REST token reads 403 on the job re-run endpoint while MCP
// `rerun_failed_jobs` reads 201 and re-queues the failed shards, so the one
// confirming re-run stays exercisable through the state-shaped tool the
// write-identity deny list still allows (+1) = +1 exactly. Candidates 2 /
// landed 1 / already present 1 / refused 0 — the second candidate, the PR-body
// footer reading, is already carried by the two 裸 REST `PATCH /pulls` lines
// and was refused as a duplicate rather than restated. Could not be paid in
// place, and the slack was MEASURED rather than assumed: of this file's 427
// adjacent bullet pairs ZERO merge under the 120-byte cap (smallest merged
// width 134 B), and the two neighbours the row joins offer 37 and 6 spare
// bytes against its 115 bytes of content; re-wrap funding is refused per the
// 2026-08-17 rule in any case. Landed count, headroom 0, same convention.
['.claude/skills/pm-dispatch/references/platform-readings.md', 454],
// Per-operation REST/GraphQL/git channel mapping — which fleet operation has
// a REST twin (each row executed in a real session, provenance date carried
// per row), the handful that are GraphQL-only, and the queue-routing
Expand Down Expand Up @@ -1526,6 +1543,23 @@ export const CROSS_FILE_MOVES = new Map([
date: '2026-09-13',
delta: 2,
},
{
// The FOURTEENTH increment, under the same STANDING exception — the
// same words again, for the same reason: a record that quotes no
// ruling is RED and each record stands alone. The +1 is accounted for
// line by line beside this entry's ceiling above; the exception's
// conditions (per-item verification and the candidate / landed /
// already-present / refused counts) are carried by the raising PR's
// body and the seat's ACCEPT.
ruling:
'the standing one-file exception for'
+ ' `.claude/skills/pm-dispatch/references/platform-readings.md` — pm-dispatch'
+ ' SKILL.md, verbatim and untranslated: 「唯一例外:`platform-readings.md`'
+ ' 增量抬上限到落地行数,免决策卡,记 `ruledRaises` 引常设裁决。条件:席位验收评论'
+ '逐条核实、去重计数(候选/落地/已有/拒收)、一事一行、不计重排」',
date: '2026-09-14',
delta: 1,
},
],
sources: [
['.claude/skills/pm-dispatch/references/lanes/cli.md', 35],
Expand Down
Loading