Skip to content

[PM seat] domain:skills — ⏳ vacant · previous session_01HZfg2AwVX191qCizp88gQr signed off (maintainer order, after PR #18359 landed) · 0 in flight · 4 governed PRs awaiting approval (PR #18351, #18357, #18363, #18365 — hotlong only) · landed ×36 · queue 13 · decision box 0 · successor: /pm-dispatch 接手, read this post first · triage seat VACANT since 02:58Z #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

vacant — the previous holder, session_01HZfg2AwVX191qCizp88gQr (skills seat R1, seated 2026-09-15T01:37Z; GitHub account os-zhuang — its content writes read back claude[bot] through 2026-09-15T20:04Z and os-zhuang from 2026-09-16T01:53Z, the account swap recorded on #18334), SIGNED OFF at 2026-09-16T04:32Z on the maintainer's order on the direct channel (「当前任务处理完,合并后就下班」, given after PR #18359 landed); the 收班简报 is the newest comment on this post and is the release marker — a successor seats immediately by /pm-dispatch 接手 after reading this post.

接任台账 (hand-off ledger, written at sign-off)

Maintainer rulings in force (verbatim on their cards, ⛔ not restated): tier policy (#17285 → PR #17294) · card-home (#17288) · review-of-record (#17302) · #17189 rider → #17359 (blocked) · forced-takeover (#17033) · #17323 ruled B (batch #123 item 1, 5644710461) · #17624 ruled B · #17942 Q1 = A / Q2 = three-class table; Q3 WITHDRAWN by triage ruling ③ (5652544529: grading, routing, dedupe, shadow check are triage's; the skills lane's finding self-triage exception stands per lanes/skills.md; while #6015 is VACANT this seat routes bare cards as stand-in triage — 代扫 — and stops the moment a triage seat sits) · #17934 = shape 1 · governed-surface tiering (#17950): rules layer waits for an authorized approval, only references/** lands through the queue after in-seat contract-tier review · ruling C (#17971, 5652306063; 「C. approve 后不管后续改动都由席位落地:」): once an authorized APPROVED review (os-zhuang / hotlong, not dismissed) exists on a governed PR, the OWNING seat lands it — record on the current head, --pair exit 0, all checks green, clear needs-user-decision, ready, auto-merge SQUASH · batch default 3 (#18125 → PR #18128) · write identity follows the CHANNEL (#18205 → PR #18216): REST-proxy-only content writes, user.login names the token, the session ID is the attribution; the ACCEPT refuses a report whose mcp_calls names a write tool.

Inherited + running ledger (hand-off)

Hot-file serial queue

Notes

Job description: references/lanes/skills.md. Standing facts carried forward (unchanged): value gate + reject authority from #13597; scripts/pm/** pure-code PRs land by in-seat contract-tier review → ready → queue, any governed .md in the diff ⇒ draft at the governed terminal (four-piece, an authorized approval, then ruling C); path face via check-governed-merges.mjs --test (objectui: scripts/check-governed-queue-guard.mjs --test); read the PR's event log before touching a governed draft. Publication register: none of objectstack / objectui / hotcrm / objectos is registered here as deploying on a default-branch push ⇒ landing criterion = MERGED through the queue, its instant read from merged_at (#18274). Tier policy: dispatch-gates.mjs --tier is the single source; skills/**, pm-dispatch SKILL.md and os-dev.md build at the contract-review tier; references/**, other .claude/skills/**, docs/adr/** and AGENTS.md build at the default tier with the seat's contract-tier review. Channel facts: content writes go through the REST proxy only (⛔ no MCP write tool); labels / assignees / issue types through scripts/pm/label-write.mjs and a REST PATCH for type; seat artefacts through scripts/pm/post-stamped.mjs (the NOW token for this act's clock, the WAS token for a quoted instant, nothing else; a body refresh names the newest comment with --ack-through; a 1-byte read-back delta is the trailing newline, not the sanitizer); POST /issues/N/labels and every other write need Content-Type: application/json; the search endpoint is not reachable through this proxy — dedupe by listing + grep with a control; job logs through MCP get_job_logs; the auto_merge REST field reads null on a merge-queue repository — read the added_to_merge_queue timeline event or the merge_group workflow runs (GET /actions/runs?event=merge_group, whose head_branch names the chain). Checkouts: /home/user/objectstack on the session branch, fast-forwarded to origin/main as it moves (b57671ed at this refresh; shallow, graft boundary 9b00f9f9 — and see #18180: the lanes/skills.md touch sha this seat's own marker recorded IS that boundary, not a reading of the path; the seat's two other claims about that marker were wrong and are corrected on the card); /home/user/objectui at 88561fd (its origin/main moved to 4a94c38b, fetched 2026-09-15T17:45Z — audited in the ninth audit at 17:53Z — 3 mainline commits, 0 governed; no node_modules). Corrections the previous seat recorded on itself (kept as pointers; the full text is in the previous body revision): budget against the ratchet before dispatching; every instant is exact and goes through the quoted-stamp form; title PATCH after the body write succeeds; declare the payment section, not a line range, at a file's ceiling; read a card's newest comments before recording a ruling; a --pair reading's stamp is the measuring command's own date. Corrections this seat recorded on itself this shift: count_check.verdict = surplus is the archive's destruction signature, not health (#18137); #18249 / #18254 were graded before the register was read; a landing instant is merged_at, never the squash commit's date (#18274); a ruledRaises record is one per INCREMENT sized at its rows, not one per row (PR #18279's record); the dispatch's gate spellings check:pm-skill-line-ratchet / --test (real: check:pm-skill-ratchet, check:pm-governed-merges). Patrol timer: Routine trig_01W822gWwQ64s2HfHUfkfKUN (self-bound, hourly at :02); an accelerator is armed only while devs are in flight.


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