Skip to content
Draft
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
3 changes: 3 additions & 0 deletions .claude/skills/pm-dispatch/references/platform-readings.md
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,7 @@
- `assignees` 实测为陈旧空值而权威读非空;`labels`/`state` 由此存疑、未实测,⛔ 不写成已测。
- ⇒ ⛔ 认领承载字段(`assignees`、`pm:*` 标签、`state`)永不从本档读。
- ⛔ 本档的缺席不是读数:要么 `hasNextPage: false`,要么第二通道。
- 两数组各比 `edges` 长度与 `totalCount`:短即最新几项缺席,认领检查走分页 `get_comments`。
- 自己刚写的按原写入通道回读;失效方向是空转与重发。
- 成因:本档经 CDN 缓存,专对最新内容失效且绕不掉,cache-busting 查询串与 no-cache 头都无效。
- 内容可滞后数分钟到数十分钟;它没有位置性对照 —— 更早内容全在,只有最新几条缺席。
Expand Down Expand Up @@ -250,6 +251,7 @@
- 分步文件在 `{Job name}/{step number}_{step name}.txt`。
- completeness check 绿只断言没有 worker 静默死,不等于测试通过。
- 并发输出的相邻不等于因果:先查 `turbo.json` 依赖边,⛔ 不只看 tail。
- turbo 一败多包同印 `ELIFECYCLE Command failed`:权威读数是 `Failed:` 行与该包自己的 `##[error]`。
- 公开发出的诊断被推翻时,更正发在同样公开的位置,据它开的 PR 撤回 draft、解绑 `Fixes`。
- 判正文被截断必须双读取:`.body` 原文,加 `Accept: application/vnd.github.full+json` 的 `.body_html`。
- 两者同一处断掉才算 issue 端截断。
Expand Down Expand Up @@ -288,6 +290,7 @@
- 第四形:裸 REST `POST /pulls` 建 PR 时,在已带 session-URL 页脚的正文后再追加一条同形页脚。
- 该追加带前置横线、恰 90 字节,送出体是存储体的严格前缀。
- ⇒ 追加形态随通道与动作(建 / 改)变,⛔ 不由任一条推其余;写后必回读。
- 平台在尾部 `---` 前后正反两向归一空行:比对正文只按首个差异偏移,⛔ 不按长度。
- 评论创建两通道都追加 58 字节 ⇒ 严格解析 `os-dev-report` 必须停在最后一个右花括号。
- 并行 spec PR 同动 pin 计数断言:被踢不是事故,按 os-regen 序再解一轮。
- 解冲突两侧收据都保留、按合并顺序堆叠;新计数从合并后源码重数,⛔ 不从收据做算术。
Expand Down
39 changes: 38 additions & 1 deletion scripts/pm/check-skill-line-ratchet.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -553,7 +553,29 @@ export const CEILINGS = new Map([
// 「各条规则的出处叙事、事故复盘 根本不重要啊,不需要写入skills啊」) — provenance dates,
// ruling citations and incident narrative left; every rule stayed. Landed count,
// headroom 0, same convention (lowering is always legitimate).
['.claude/skills/pm-dispatch/references/platform-readings.md', 359],
// Raised 359 → 362 by the fourth-increment ruling — again an ORDINARY raise
// under this map's own maintainer exit, ⛔ not a cross-file move. Maintainer,
// decision batch #56, 2026-09-06, verbatim and untranslated: 「其他同意」 on the
// presented recommendation, option A; the director record's own sentences for
// it (comment 5559776878):
// The ceiling in `scripts/pm/check-skill-line-ratchet.mjs` for
// `.claude/skills/pm-dispatch/references/platform-readings.md` moves 359 →
// 362 … All three lines land as authored … No existing line is deleted to pay
// for them (option C rejected); no line is dropped (option B not needed).
// Spent in full at one line per reading, each written in this file's voice and
// wrapped by this module's own `wrapLine` rather than estimated: the zero-quota
// payload channel's timeline discriminant +1 (compare each array's `edges`
// length against `totalCount`; short means the NEWEST items are absent, so a
// claim check goes to the paged `get_comments` read), the authoritative reading
// of a multi-package `ELIFECYCLE` spray +1 (the `Failed:` line plus that
// package's own `##[error]`), and the first-differing-offset comparison that the
// platform's two-way blank-line normalisation around a trailing rule forces +1
// = +3 exactly. Nothing was paid in place: line-neutral folding was MEASURED,
// not assumed — of the file's 333 adjacent rule pairs, ZERO fit the 120-byte
// line cap when merged, so there is no re-wrap slack at all, and 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', 362],
// 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 @@ -963,6 +985,21 @@ export const CROSS_FILE_MOVES = new Map([
// failure the header warns about. Neither ruling is reopened by this: both
// are still quoted beside the ceiling, which is where a reader gets back to
// them, and the lines they bought are the lines this rewrite handed back.
{
// Quoted beside this entry's ceiling above, where the +3 is accounted
// for line by line. Copied from there, not paraphrased.
ruling:
'the fourth-increment raise on'
+ ' `.claude/skills/pm-dispatch/references/platform-readings.md` — maintainer,'
+ ' decision batch #56, 2026-09-06, verbatim and untranslated: 「其他同意」 on option'
+ ' A, and the sentences that ruling adopts, in the director record\'s own words'
+ ' (comment 5559776878): "The ceiling in `scripts/pm/check-skill-line-ratchet.mjs`'
+ ' for `.claude/skills/pm-dispatch/references/platform-readings.md` moves 359 → 362'
+ ' … All three lines land as authored … No existing line is deleted to pay for them'
+ ' (option C rejected); no line is dropped (option B not needed)."',
date: '2026-09-06',
delta: 3,
},
],
sources: [
['.claude/skills/pm-dispatch/references/lanes/cli.md', 35],
Expand Down
Loading