Uh oh!
There was an error while loading. Please reload this page.
docs(pm-dispatch): SKILL.md discipline pack — six scoped protocol amendments in one file - #12086
Merged
Merged
Conversation
…ndments One file, six amendments, all from the skills-lane self-triage rulings on the folded pack (hazard-claim readings, angle-bracket placeholders, work-item staleness, the dev's own claim comment, the fourth mutex reading, and the report-marker collection criterion). The line ceiling was NOT raised: 1005 -> 999 lines (headroom 6). New rule text is paid for by compressing existing prose in the paragraphs it lands in.
This was referenced Aug 25, 2026
hotlong
marked this pull request as ready for review
August 25, 2026 09:16
Uh oh!
There was an error while loading. Please reload this page.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes#11578, closes#11901, closes#11936, closes#11944, closes#11604.
Part of #11923.
A folded pack: six scoped amendments from the skills-lane self-triage rulings, all in one
file —
.claude/skills/pm-dispatch/SKILL.md. Each item below is the grading comment'sscope, nothing wider.
Scope notes on the two split cards:
pm:dispatched标签的会话对三读数完全隐形(外加两条 references 事实变更) #11604 — items 1 and 3 land here. Its item 2 (the per-session REST 403) isplatform-readings scope and rides that pack, not this PR; its item 4 (the appendix
patrol shape) is a verify-item on the patrol-predicates pack. The card is closed here
per the dispatching round's call, with those two riders recorded on the card.
Part of. Its core, the os-dev report contract in.claude/agents/os-dev.md, lands onthe os-dev.md pack.
Per-item checklist
正文/评论仅当含尖括号/HTML 注释才读回— a read-back rule only; nothing stopped the PM from emitting the construct in the first place.pm:dispatchedis evidence-identical to an empty seat, and a stale seat post makes the pair a trap.state=CLOSEDcard byupdated_at, read itsClaim:session ID. Immune to label conventions, one list + one read, and — like the third — it can only ADD self-retreat, never clear a seat.os-dev-report. ⛔ An absent HTML-comment marker alone never reads as "report missing". The comment-first ordering (the card copy is the one that survives a mid-run death) is stated in the same paragraph.Ceiling accounting — the ceiling was NOT raised
scripts/pm/check-skill-line-ratchet.mjsholds.claude/skills/pm-dispatch/SKILL.mdat1005 lines. The file was at that ceiling before this PR.
are ~2.1 KB of text. Payment came from two sources, and only the first is what the
ratchet's 2026-08-17 note calls payment:
removed, not rules: the duplicated "探的是「报告未达」不是「分支未出现」" clause, "有在飞
即收紧" (already stated by the two intervals next to it), "基线之内的沉默不是证据"
(already stated by "只有三类正当依据"), "这里是消费侧兜底", "Bug 优先只作用于队列卡",
"(其真实解决路径)", "让任何座位可继承", the language clause in 决策箱勤务 (it repeats an
invariant), and several parenthetical asides.
raggedly wrapped (~79 B/line against the 120 B budget), so re-flowing them recovered
lines without removing content.
Source 2 is the one the ratchet note reserves for net-content-reducing PRs, so it is
flagged rather than buried. Mechanically constrained: the re-wrap tool refused to modify
any line present verbatim in
origin/main, so no maintainer ruling quote was re-flowedand no untouched paragraph was densified — the diff is confined to the six landing points
and their own paragraphs. If the reviewer wants the payment to be word-cuts only, the
remedy is a follow-up compression pass on this same file, not a ceiling change.
The ceiling constant itself is untouched (still 1005). It was deliberately not lowered
to 999: any sibling pack that lands in this file would then collide with a ratchet the same
round.
Gates
Run on the final commit 746c059, derived with
node scripts/pm/dispatch-gates.mjs --repo objectstack-ai/objectstack(change set takenfrom the merge base by the script, not from a hand-written list). Verdict lines as the
gates printed them, exit codes captured before any pipe:
Declared narrowing (one gate):
pnpm --filter @objectstack/lint run check:doc-formula-expressionswas not run locally — it importstypescriptand thisworktree has no
node_modules; the gate refuses loudly rather than answering. Itspopulation is formula expressions in docs and this diff adds no code fence of any kind. CI
runs it on this PR.
No changeset:
.claude/**only, nothing published —skip-changesetapplied.Governed surface (
.claude/**) ⇒ draft, human merge. Not marked ready, nothing armed.Generated by Claude Code
Generated by Claude Code