Repository navigation
Seat-post protocol: registry bodies grow without bound — bound the live body to current state, move shift narration out #7583
Description
Activity
Triage:
needs-user-decision+domain:devx.- Classification: the card proposes a pm-dispatch SKILL protocol amendment (bounded seat-body template + narration relocation + takeover compaction + a soft size guard). The maintainer raised the underlying problem (quoted in the body) but has not blessed this specific 4-part shape, and per the 2026-08-11 ruling recorded on pm-dispatch SKILL: skills updates are ADR-class — human review/merge required (maintainer ruling 2026-08-11) #7548,
.claude/skills/pm-dispatch/**updates are ADR-class with mandatory human review — so the shape itself is the decision, not an execution detail. - Landing/routing:
.claude/skills/pm-dispatch/SKILL.md(protocol text) +scripts/pm/check-half-states.mjs(option 4) — bothdomain:devxsurfaces. Anchor verified onorigin/main@744b8f5:scripts/pm/check-half-states.mjsexists (10H2references), so the proposed report-only H-item has a live host. - Dedup: adjacent SKILL cards pm-dispatch SKILL: skills updates are ADR-class — human review/merge required (maintainer ruling 2026-08-11) #7548 / pm-dispatch SKILL: five measured lessons from the 2026-08-10 services shift (queue-kick signature, arm-timing variant, opportunistic restart conditions, claim-race arbitration, lane inventory reading) #7518 / pm-dispatch SKILL: require a four-lens analysis block on every needs-user-decision card #7498 / pm-dispatch SKILL: the file-at-destination ruling (#7165) puts
target:v17cards into cloud, which the 发版板 section says can never happen — a live v17 card was invisible to both prescribed queries for ~10h #7493 / pm-dispatch SKILL: Operational note 1'sgh-readonly-queue/*test gave a false negative at queue capacity — propose theadded_to_merge_queuetimeline event as the criterion, plus a missing success-sequence rule #7492 cover different subjects (skill-review ruling, shift lessons, four-lens block, target-board gap, queue criterion); none touches seat-body size. No duplicate. - Stale-premise: filed 06:25Z today; premise (seat bodies unbounded) is a protocol fact, not a code fact — nothing to re-verify beyond the script anchor above.
- Not release-blocking (internal process tooling;
target:*not applicable).
本评论来自分诊座位 Routine(#5474 试点),不构成认领。
Generated by Claude Code
- Classification: the card proposes a pm-dispatch SKILL protocol amendment (bounded seat-body template + narration relocation + takeover compaction + a soft size guard). The maintainer raised the underlying problem (quoted in the body) but has not blessed this specific 4-part shape, and per the 2026-08-11 ruling recorded on pm-dispatch SKILL: skills updates are ADR-class — human review/merge required (maintainer ruling 2026-08-11) #7548,
Maintainer ruling recorded 2026-08-11 (PM session, executing the maintainer's direct instruction in chat — verbatim: 「接受你的全部建议,请更新 issue 的状态和标签」, accepting the four-lens decision-inbox review in full).
Ruling: accepted as proposed. Bounded seat-body template (Scope / Current PM / Inherited state / Hot-file serial queue / Standing commitments / Notes — all current-state, none time-growing); shift narration lives on the cards/PRs/round reports where the state already is; takeover compaction becomes a standard step (edit-history is the archive, per the #6019 precedent).
Implementation: part of the consolidated SKILL amendment batch —
model: claude-fable-5mandatory (2026-08-10 tiering ruling), narrative toreferences/incidents.md(line ratchet),skip-changeset.State:
needs-user-decision→pm:queue(domain:devxseat).
Generated by Claude Code
huangyiirene commented
on Aug 11, 2026 CollaboratorMore actionsTransferred to the skills seat (#7623): label
domain:devx→domain:skills. Executed on the maintainer's direct chat instruction to the devx seat, 2026-08-11, verbatim: 「所有现有 skills 相关卡片转到 新的项目经理」. Rationale: the seat-post protocol lives in the pm-dispatch SKILL — its amendment lands in the skills roots.
Generated by Claude Code
- added a commit that references this issue
on Aug 17, 2026
Problem
Seat posts (
label:pm:seat) are defined as "the single authoritative registry" for each seat, but nothing bounds their size. #6019 (domain:engine-core) had reached ~61 KB by 2026-08-11: wave-by-wave status narration, per-card verdicts, patrol notes and stacked handover sections all accreted in the body across shifts. The maintainer raised it directly today (2026-08-11, engine-core PM session):> 座位贴 #6019 内容较大, 这个问题应该怎么解决,以后会越来越大。
Cost is concrete, not aesthetic: a 61 KB body exceeds tool read limits (this morning's takeover needed chunked shell reads of a saved file to read its own seat post), every full-body edit must round-trip the whole text through a write channel, and the operative state — which the protocol says the body exists to carry — is buried under history that belongs to closed cards.
Growth mechanism
The protocol already says the right things — "评论只作交接审计,不承载状态", state lives on the issues — but in practice the body absorbed shift narration ("#NNNN DISPATCHED…", "#NNNN ACCEPTED + QUEUED…", per-wave tallies), which is per-card state that already lives on the cards and PRs. That narration is the unbounded term; the genuinely body-shaped sections (Scope / Current PM / inherited ledger / hot-file serial queue / standing commitments) are all naturally bounded.
Precedents already in the field
Proposal (for a SKILL.md amendment —⚠️ any card editing
.claude/skills/pm-dispatch/**mandatesmodel: claude-fable-5per the 2026-08-10 Model-tiering ruling)scripts/pm/check-half-states.mjsas a report-only H-item, so oversized seat posts surface in patrol sweeps instead of being discovered at read-failure time.Options 1–3 are protocol text; option 4 is a small script change. The #7341-style skill-batch card is the natural vehicle if one is already queued.
Filed unassigned, no
domain:*— triage routes (likelydomain:devxby the skills/scripts surface, with the fable mandate noted above).Source
Observed during the 2026-08-11 engine-core seat takeover (session
session_01PemxJmMZT9JphrsNx886Ce); maintainer prompt quoted above. Dedup: searchedpm:seatsize/compaction cards — none exist.