Skip to content

[batch] pm-dispatch SKILL consolidated amendments + compression — eight ruled cards, two serialized PRs (skills seat, round 1) #7631

Description

@os-help

Sweep/batch card filed by the skills seat (#7623, session session_01ATJiqhFNL82YwV8udPkoqX). All eight members carry maintainer rulings recorded 2026-08-11 on their own threads. Batch shape confirmed by the maintainer in the seat's 专题讨论 (2026-08-11): scope confirmed 「确认,七张全收」, then 「包括 7498」 (PR #7552 closed, its content folded here), then the compression directive quoted under PR₂ below. One claim; two serialized PRs, both human-merged (sweep discipline, #6243 precedent).

Members (each row = one checklist section in PR₁'s body; ruling text lives on the member's thread)

member what lands
#7498 Four-lens analysis block required on every needs-user-decision card (step 0 + step 8); Blocked-by-aware batch selection tier; round-brief decision flags. Reference implementation: closed PR #7552's diff (branch claude/issue-7498-decision-four-lens, head 24934cf8b) — reuse against current anchors, do not re-derive; keep check:skill-frame-sync green exactly as that PR's body explains (the frame stays 3-axis; the block is its card-face serialization)
#7548 Step-7 ACCEPT path fork extends to .claude/skills/** + skills/** (same three-part terminal state as docs/adr/**); Guardrails entry quoting 「所有 skills 的更新和 adr 类似,需要人工审核」 verbatim; skills-seat structural registration (domain table row, roster/vocabulary row for domain:skills, one-time-setup label line)
#7493 发版板 → three queries (objectstack + objectui + cloud); repo:cloud seat gains target:* production (one-producer-per-backlog); repeal the "a hit in cloud is a mislabel signal" clause; step-9 metric = sum of three. Ruling marks it most urgent
#7492 Operational note 1: queue-membership criterion → added_to_merge_queue timeline event (branch test kept for batch position only; auto_merge-field warning verbatim); success-sequence rule (removed_from_merge_queuemerged within ~1s = landing, not ejection); fold note 21's empty-receipt prescription into the same reading discipline (tally 3/3; disable does not dequeue)
#7518 Five measured lessons (queue-kick signature receipt + single re-queue then steward handoff; empty-receipt second timing shape — read the queue before flipping; opportunistic restart conditions hang on dispatch-time checks in the owning seat post; claim-race loser posts a handoff comment with its readings; lane inventory via field-narrowed list_issues whole-lane read, intersect locally)
#7553 Direction 1: one line making the canonical Claim: spelling explicit (predicate stays strict); ⛔ no predicate widening
#7583 Seat-post protocol: bounded body template (Scope / Current PM / Inherited state / Hot-file serial queue / Standing commitments / Notes — all current-state); shift narration lives on cards/PRs/round reports; takeover compaction standard step (edit history = archive); script half: report-only oversized-body H-item in scripts/pm/check-half-states.mjs
#7512 Option (a): explicit clause in .claude/agents/os-dev.md (+ dispatch-brief echo where it verifiably repeats) ranking the dispatch contract above platform-injected PR-subscription postures

PR₂ — structural compression (maintainer directive, 2026-08-11, verbatim, untranslated)

现在 的 项目经理skills 太长了,需要考虑怎么压缩

Measured composition @ origin/main (3027 lines): The round loop 1870 (step 5 Dispatch 587, incl. Prompt template 326; step 7 Review 380; step 0 sweep 200; step 6 Collect 195; 入队与落地 167; step 8 130), Operational notes 612, Domain lanes 209, State model 111, the rest 189. Existing extraction targets: references/incidents.md (140 lines, append-only), references/compile-surfaces.md (27).

Prescription (seat's plan of record; the maintainer vetoes at PR review):

  • Target: main file ~1400–1600 lines (deep compression, roughly −50%).
  • Method: every rule keeps its imperative + criteria/command + one-line case anchor (issue number); narratives, 沿革, worked examples, incident retellings move verbatim to references/incidents.md (append-only, 出处 line each) or a new references/operational-notes.md. Machine-consumed tables (domain lanes, 词表, roster, label setup) stay in the main file.
  • No rule deletion — compression moves prose, never removes a binding rule, criterion, or prohibition; deleting a rule requires its own maintainer ruling.
  • Ratchet: lower check:pm-skill-ratchet's ceiling from 3050 to the achieved count (shrink-only lock-in).
  • check:skill-frame-sync stays green; the four frame copies are untouched by moves.

Delivery order (load-bearing, #7341 precedent: pure moves come AFTER all textual additions)

  1. PR₁ — amendments: the eight member sections above. Fixes #7498, #7548, #7493, #7492, #7518, #7553, #7583, #7512 + Part of #7631. Ratchet: 3027/3050 today — pay any overage by minimal extraction.
  2. PR₂ — compression: opened only after PR₁ is merged (same file, strict serialization). Pure structural moves + ratchet lowering. Part of #7631; this card closes after PR₂ lands.
  3. Both PRs are ADR-class: draft/review by AI seats, then visibly pending; ⛔ nobody merges, enqueues, or arms auto-merge — the maintainer merges manually.

Constraints

Member candidacy

Per sweep rule 5: members keep pm:queue but are not individual dispatch candidates while this card is open; they close together via PR₁'s Fixes lines.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions