Skip to content

[PM seat] domain:skills — 🟢 os-steve #7623

Description

@huangyiirene

This post is the single authoritative registration of the skills seat. Four-section template; the job description is versioned at .claude/skills/pm-dispatch/references/lanes/skills.md — ⛔ not copied here.

Current PM

🟢 os-steve — session session_019RfFHiRCSs3JXLK4cwcfox, assumed 2026-09-03T15:58Z, maintainer-invoked interactive session (/pm-dispatch skills). Maintainer's in-session directive this shift (verbatim, untranslated): 「前任只处理收尾任务,你可以接班」 (15:4xZ). Previous PM os-litant (session session_01LraLgQVGq8egUwfYZpbYt1, 2026-09-02T01:12Z → 2026-09-03T15:24Z): its shift is archived in body revision v22 (2026-09-03T15:24Z) and its briefing (comment 5528132029); its inherited directives (programme #14292 「审核所有的 skills,进行全面的优化。」; heavy slots = 5 from 「90分钟后,并发加到5」) carry forward. Round-open marker = takeover comment 5528395616. Round reports (中文) in chat at 16:15Z. Readings carry the UTC minute they were taken. Timers: patrols #1#22 (2026-09-03 16:48Z → 2026-09-04 06:13Z) are archived in the body revision of 2026-09-04T08:14:52Z; patrols #23#32 and the between-patrol acts of 2026-09-04 06:50Z → 13:54Z (every PR of that day landed by the queue or an approver, every card closed by Fixes and label-cleaned, the decision batches of that day ruled and executed) are archived in the body revision of 2026-09-05T13:59:41Z. Later patrols and rounds: the live-state bullet in the ledger and its archive pointers.

Inherited + running ledger

Hot-file serial queue

  • .claude/skills/spec-property-retirement/SKILL.md (337/337, headroom 0; row pin 328): PR #15566 MERGED 01:55Z → #15388 flight (launched 02:3xZ, line-neutral). skills/objectstack-platform/SKILL.md (12983 of 12984 tokens, headroom 1 — at its ceiling; the next addition pays with a trim or its own ceiling decision): PR #15625 MERGED 01:53Z — free. .claude/skills/pm-dispatch/SKILL.md (811/811, table pin 342) + references/state-machine.md (42/42): PR #15696 MERGED 04:24Z → #15404 flight (launched 04:4xZ) → #15647 section 2 (if ruled). scripts/pm/check-half-states.mjs + ensure-pm-labels.sh: PR #15795 (#15744) MERGED 09:13Z — free. skills/objectstack-automation/SKILL.md (12305 of 12768 tokens): PR #15524 MERGED 02:07Z → #14483 + #14966 flight (launched 02:4xZ). skills/objectstack-data/references/data-hooks.md: spec lane's draft PR #15626 → #14483 point 2. .claude/agents/os-dev.md (403/403 on PR #15725): member 4 at the governed terminal, readied by the approver; skills/objectstack-platform/references/_index.md: held PR #15424 (#15361 fork) — disjoint file.
  • objectui .claude/hooks/guard-shared-stash.sh + .selftest.sh: PR #7695 (#7441) at the governed terminal (03:5xZ). docs/adr/0130-…: PR #15704 (#15453) MERGED 05:02Z — free; docs/adr/0131-…: devx PR #15612 → #15453's ADR-0131. objectui .claude/hooks/guard-main-checkout.sh + .selftest.sh and objectstack .claude/hooks/guard-main-checkout.sh + .selftest.sh: PR #7686 / PR #15665 at the governed terminal (02:4xZ; #15665 approved and ready 03:2xZ) → #7259 + #11809 (serial; also guard-main-checkout-bash.sh:339 in both repos). packages/spec/scripts/build-skill-references.ts + the api/platform _index.md: PR #15424 patch round (#15361 D) in flight.
  • .claude/skills/pm-dispatch/references/{platform-readings,rest-channel,release-aftercare,true-green,compile-surfaces}.md + references/lanes/*.md (13 files) + their 13 rows in scripts/pm/check-skill-line-ratchet.mjs: PR #15641 (member 3) — approved and enqueued by os-zhuang 01:44Z, removed 02:22Z as dirty; re-merged at 4008475c8 (clean, green) and verified 02:5xZ; awaiting the approver's re-enqueue. After it: the programme's one re-lock pass.
  • scripts/pm/dispatch-gates.mjs: PR #15801 (#15753) MERGED 09:45Z — free (REST showed auto_merge null while it was queued — a known reading, not a drop). AGENTS.md (1161 of 1162, unchanged by the landing): PR #15340 (#14942) MERGED 13:18Z — free; .claude/agents/os-dev.md (459 of 469): PR #15355 (#15087) MERGED 13:35Z — free. #15125 (AGENTS.md, needs a line): headroom is still 1 after PR #15340 (it deleted nothing), so it is folded into the AGENTS.md member of #15379 (the rules-only rewrite nets lines) unless the maintainer rules a ceiling raise first; it stays pm:queue until that member is dispatched. #15121 (list_issues labels union — a fourth platform-readings increment) is folded the same way into the platform-readings member of #15379 (rules-only rewrite, net shrink: the reading is carried as one line, no ceiling raise), pm:queue until that member is dispatched. scripts/pm/bare-root-worklist.mjs: PR #15314 (#15270) MERGED eb40a721 11:12Z — free. scripts/check-skill-frame-sync.mjs: PR #15060 MERGED 20:09Z — free. scripts/check-role-word.mjs + scripts/check-corpus-claim-drift.mjs + scripts/role-word-baseline.json: PR #15073 (#15061) MERGED c0d32cda 08:36Z — free. skills/objectstack-data/references/data-hooks.md: PR #15186 (#15177) MERGED 06:22Z — free. scripts/pm/check-governed-queue-guard.mjs + .claude/hooks/guard-governed-enqueue.{sh,selftest.sh} + AGENTS.md:311-313 + SKILL.md:729: PR #15203 (#15187 + #15209) MERGED 6530f757 08:14Z — free. objectui scripts/check-governed-queue-guard.mjs: PR #7606 (objectui#7601) MERGED 0d8fd7ce 07:09Z — free; objectui AGENTS.md: PR #7630 (objectui#7618) MERGED, cleaned 13:39Z; PR #7640 (objectui#6997, the changeset-population sentence under Housekeeping) at the governed terminal 13:52Z — draft, ACCEPT posted, os-zhuang + hotlong requested, human merge; objectui scripts/check-skill-examples.mjs: PR #7631 (objectui#7610) MERGED 0b24d7f8 12:15Z — free. scripts/check-ratchet-remedy-authority.mjs (+ one remedy string in dispatch-gates.mjs): PR #15199 (#15179) MERGED 3933819c 07:08Z — free (#15201, the worklist row, dispatched 07:2xZ). objectui CLAUDE.md: PR #7600 (objectui#7506) MERGED c70ebaae 05:44:59Z by os-zhuang, #7506 cleaned — free.
  • scripts/pm/check-governed-merges.mjs: PR #15283 (#15272) MERGED 5b09356b 09:28Z — free. .claude/skills/pm-dispatch/SKILL.md:723 + .claude/hooks/guard-governed-enqueue.sh:54: PR #15031 (#14984) MERGED b17cdea0 04:06Z by os-zhuang, #14984 cleaned — free. .github/workflows/half-state-patrol.yml: PR #15000 MERGED 17:59Z — free; scripts/pm/check-half-states.mjs: free (untouched by #14881). scripts/pm/ensure-pm-labels.sh: PR #15014 MERGED 18:37Z — free; landing step owed: a seat with gh runs the seeder's --reconcile against the five repos (this container has no gh). .github/workflows/stale.yml: PR #15016 MERGED 18:37Z — free.
  • .claude/launch.json + .claude/skills/dogfood-verification/SKILL.md (PR #14979 MERGED 18:14Z 09-03), docs/qa/platform-checklist/SWEEP.md (PR #14983 MERGED 17:41Z 09-03), skills/objectstack-platform/** (PR #14981 MERGED 18:14Z 09-03), objectui skills/objectui/guides/testing.md + scripts/check-skill-examples.mjs (PR #7568 MERGED 02:53Z): free.
  • references/platform-readings.md (358/358): PR #15265 (#15192) MERGED dc46c4ec 12:56Z by os-zhuang — 397/397, free; the fourth increment (#15121) is folded into the platform-readings member of #15379 (rules-only rewrite, net shrink — the reading is one line, no ceiling raise); behind it: the four prior-regime holds' facts, the re-lock pin PR. references/contract-review.md + scripts/pm/check-skill-line-ratchet.mjs (ceiling map) + scripts/pm/check-clause2-carriers.mjs: PR #14999 MERGED 18:18Z — PR #15266 (#15191) MERGED 0e24b0c2 08:40Z — the #15192 patch round (PR #15265) carried the 397 row and the second ruledRaises record — MERGED 12:56Z; #14870's :540 comment next (after PR #15038 lands, its other site). references/dispatch-runbook.md (280/280 at the PR head): **PR #15057 (#14869): approved by os-zhuang three times and enqueued three times (03:41Z, 04:46Z, 05:16Z), removed by the queue twice (04:07:50Z, 05:14:16Z) — the maintainer asked at 05:19Z why it never merges. Root cause reproduced by the seat: check-skill-frame-sync reds on the QUEUE build only — the bullet's paste anchor 「每个方案必须沿四条固定评估轴分析…」 trips the undeclared-copy detector since PR #15060 widened the scan to references/ after this head was built (the PR's own CI predates #15060); approvals were never the blocker (the governed guard passed on every queue build). Patch round sent to the #14869 dev 05:19Z (merge main, re-anchor the bullet without the frame's marker phrases, four lines at 280/280, frame-sync green on the merged tree, push; note on the PR 5536069697); the approver re-approves after the push. Maintainer's two chat messages relayed verbatim: 「15057 我批准了很多轮,一直合并不了」 · 「你的门禁有问题,只需要有人工批准记录就行,不需要卡最新的提交。」 — the seat's reading at that minute: the frame-sync check, not the approval gate, is what reds on THIS PR — and the instruction names a real property of the queue guards, executed as #15187 / objectui#7601. Patch landed 05:56:55Z: head ea53bae5 (merge ba86720d + re-anchored bullet, zero fingerprints, frame-sync green on the merged tree, 280/280), verified by the seat 06:01Z (note 5536400751); one fresh approval on the new head lands it — review re-requested from os-zhuang; the seat does not re-enqueue a red PR while a patch round flies (GH006: a queued branch cannot be pushed). MERGED 1bc3c092 06:49:25Z; #14869 closed by Fixes and cleaned 07:05Z — free. .claude/agents/os-dev.md + AGENTS.md (footer rule home :485-500): PR #15015 (#14997) approved + enqueued by os-zhuang 02:47Z, MERGED 3b34cef9 03:40:06Z, #14997 closed by Fixes and label-cleaned 03:55Z — free.
  • CLAUDE.md, skills/README.md, skills/objectstack-ai/**, skills/objectstack-ui/**, skills/objectstack-api/**, rest-channel.md, lanes/**: free. skills/objectstack-data/SKILL.md: PR #15010 MERGED 18:22Z — free; rules/validation.md: PR #15046 (#15011) MERGED 5c584231 04:06Z by os-zhuang, #15011 cleaned — free.
  • objectui: skills/objectui/** fence tags: PR #7473 (linger) → #7474; CLAUDE.md: #7506 (on #14978); check-doc-snippet-types.mjs: #7463 item 2 (ruling).
  • Programme rules: one flight per published package; splits add ceiling rows pinned at landed counts and never edit other rows; ceiling re-locks once, after the flights; the line ratchet is never edited by a programme flight (#14209 is a ruled raise, not a programme flight).

Notes

Job description: references/lanes/skills.md. 留守登记: os-litant (session_01LraLgQVGq8egUwfYZpbYt1) on objectui PR #7473 and the label bookkeeping of #14793 / #14685, from 15:24Z. Heavy slots = 5. Contract-review fuse: get_session 15:52Z reads session_context.model = last_served_model = claude-fable-5-1; CONTRACT_REVIEW_TIER at origin/main 5bc2f27 names the same value — reading = constant; every review this shift done in-seat at that tier. Channel facts this container (16:27Z; 17:1xZ a dev's container refused the additive REST label endpoint and plain curl reads mid-run — the dev fell back to the MCP whole-group label replace with comparative read-back, so REST is per-container, not a given): repo-scoped REST answers 200 (reviewer requests go through POST /pulls/{n}/requested_reviewers, draft bit untouched; devs write labels through the additive endpoint); /rate_limit core 15000 / graphql 10000 at 16:29Z. Governed-merge audit run 16:14Z over the v22 window (checkouts deepened to 700 / 400 commits first): 57 governed merges, os-zhuang 53 · hotlong 3 · os-project-manager 1 (PR #14784, 09:56Z — for the maintainer's recognition); cloud / objectos UNAUDITED (no checkout); next round, exactly: --since-ref objectstack=5bc2f2727aef --since-ref objectui=0e3b3be09fef. UNRECOGNISED lines: dev gate logs are not retained — NOT MEASURED. Half-state anchor #9857 (swept 19:46Z, commit 101ad2cc): one row names this lane — H26 on #14133 (pm:blocked on #15013, a needs-user-decision card, which the sweeper reads as a block with no closing mechanism; it says so is not a judgement that the block is wrong). Seat's reading: the release mechanism is this seat closing #15013 once the maintainer rules, which unblocks the eight family cards in one write — state kept as is, no pm:on-hold conversion. Update 07:2xZ: #15013 is closed and the family landed, so the three H26 rows dissolve at the next sweep (07:37Z). No row names this post, a queued card, or any in-flight card; the earlier H35 rows (PRs #14860 / #14911 / #14953) are gone with their merges. Standing facts: value gate + reject authority from #13597 in force; scripts/docs-audit/handwritten-docs.json NON-governed by ruling; published skills/** governed in objectui too; scripts/pm/** pure-code PRs land by in-seat contract-tier review → ready → queue (2026-08-26 md-content split), any .md in the diff ⇒ draft at the governed terminal; check:platform-checklist is a maintainer-run gate (lint.yml:2226-2231), red on main for four UNCLASSIFIED kinds (#14961, another seat's). Prior body revisions carry earlier running states — compacted 08:3xZ after the 08:28:29Z write came back 58 chars short (the trailing footer block dropped once the body passed ~65.7k chars; every earlier write read back identical), so rounds 1–4 and patrols #1–#22 live in the 08:14:52Z revision.


Generated by Claude Code

Activity

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

Metadata

Metadata

Assignees

Labels

pm:seatPM seat registry issue - single-writer body, index = this label

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions