You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
pm-dispatch: a Seam: card routes by the seam — vertical dispatch by default inside objectstack (file surface names both ends; acceptance = the consumer reads it or the key retires with its ledger row), and rule 2's parent + per-repo sub-issues trigger on a spec↔objectui seam, not only on a feature (item ② of #18900) #18902
Execution card for item ② of #18900 (the maintainer's 「同意」 on the five-line batch, 2026-09-18; proceeds under the veto window — a C on #18900 withdraws this card). Filed by the domain:skills execution seat (session_01BTeBejoPUvRHN8WdAJC6oF, seat post #7623) at 2026-09-18T04:58Z; filed with pm:queue, domain:* and priority are triage's (lane self-triage exception noted).
What lands (governed rules layer: .claude/skills/pm-dispatch/SKILL.md 812 / 812, references/core-rules.md 151 / 151 twin where the subset relation requires it; both net 0)
〈域车道〉锚定规则 (:242 at 0b31d90) gains the seam clause: a card carrying a Seam: line whose producer is packages/spec stays in the spec lane (charter conflict: does a Clause-②: no PR that touches no contract surface still owe an in-seat review before it can land? #18536 ruling 5717169811 rule 2: a diff on a contract surface is spec-lane work) and is dispatched VERTICALLY by default — the claim's file surface names BOTH ends (the spec key and the runtime call site / pin test), and the acceptance criterion is fixed: the consumer reads the key (its liveness-ledger row leaves planned) or the key retires together with its ledger row. Today this is the exception path 「派发后发现的跨车道面(含 spec)不移卡,认领席借契约复审档隔离复核」; it becomes the default for seam cards, the isolated review unchanged.
〈多仓协调〉规则 2 (:214) widens its trigger: 「跨仓 feature」 → a cross-repo feature OR a Seam: card whose consumer is in objectui (renderer) — the triage seat opens the parent + one sub-issue per repo itself, spec / backend first, the objectui half with Blocked-by: and the pin bump; ⛔ no maintainer action per epic.
A one-line reader for the spec seat in references/lanes/spec.md 席内分派 only if the two lines above need a pointer there (the dev decides; ⛔ no restatement).
Acceptance
Reader tests in the PR body: (a) 「a Seam: card names runtime: — who dispatches it and what does the claim's file surface say?」 ⇒ the spec seat, both ends, acceptance as above; (b) 「a Seam: card names renderer: in objectui — who opens what?」 ⇒ triage opens parent + two sub-issues, spec half first; (c) 「a spec-only card with no Seam: line」 ⇒ unchanged.
Execution card for item ② of #18900 (the maintainer's 「同意」 on the five-line batch, 2026-09-18; proceeds under the veto window — a C on #18900 withdraws this card). Filed by the
domain:skillsexecution seat (session_01BTeBejoPUvRHN8WdAJC6oF, seat post #7623) at 2026-09-18T04:58Z; filed withpm:queue,domain:*and priority are triage's (lane self-triage exception noted).What lands (governed rules layer:
.claude/skills/pm-dispatch/SKILL.md812 / 812,references/core-rules.md151 / 151 twin where the subset relation requires it; both net 0)0b31d90) gains the seam clause: a card carrying aSeam:line whose producer ispackages/specstays in the spec lane (charter conflict: does aClause-②: noPR that touches no contract surface still owe an in-seat review before it can land? #18536 ruling 5717169811 rule 2: a diff on a contract surface is spec-lane work) and is dispatched VERTICALLY by default — the claim's file surface names BOTH ends (the spec key and the runtime call site / pin test), and the acceptance criterion is fixed: the consumer reads the key (its liveness-ledger row leavesplanned) or the key retires together with its ledger row. Today this is the exception path 「派发后发现的跨车道面(含 spec)不移卡,认领席借契约复审档隔离复核」; it becomes the default for seam cards, the isolated review unchanged.Seam:card whose consumer is in objectui (renderer) — the triage seat opens the parent + one sub-issue per repo itself, spec / backend first, the objectui half withBlocked-by:and the pin bump; ⛔ no maintainer action per epic.references/lanes/spec.md席内分派 only if the two lines above need a pointer there (the dev decides; ⛔ no restatement).Acceptance
Seam:card namesruntime:— who dispatches it and what does the claim's file surface say?」 ⇒ the spec seat, both ends, acceptance as above; (b) 「aSeam:card namesrenderer:in objectui — who opens what?」 ⇒ triage opens parent + two sub-issues, spec half first; (c) 「a spec-only card with noSeam:line」 ⇒ unchanged.check:pm-skill-ratchet(812 / 812, 151 / 151 hold),check:pm-skill-id-lint,check:skill-frame-sync/-freshness(the four-axis block untouched),check:nul-bytesgreen;check:pm-governed-proseuntouched.Surface and serial
Clause-②: noPR that touches no contract surface still owe an in-seat review before it can land? #18536 PR → [finding] the landing flow has no legal state for the undraft route's 429 — a seat that hits it can only escalate or invent a retry cadence, while the 429 body names the exact instant to wait for #18743 · finding(skills): a lit control certifies the INSTRUMENT, not the QUESTION — a live grep, its lit control and its absent control all fired while answering something the tool structurally cannot see #18755 → finding(pm-dispatch): 认领评论的「门禁反向要求的派生物」开放臂能把skills/**长进实际文件面 —— 档位裁定与净增行数预算都按一个不含它的面定,事后无任何闸比对 #18665 → [finding] the harness auto-mode classifier denies the protocol's landing command non-deterministically — 8 byte-identicalPUT …/ccr/auto_mergefrom one turn: 4 allowed / 4 denied under three reasons; and a hooks landing rotates every seat off shift before it can flip ready #18469 PR-B → this card (fold-or-serial answered at its dispatch).skip-changeset; governed ⇒ draft at the four-piece terminal, the maintainer's approval lands it.Seam:line on filing, vertical dispatch by default in the spec lane, automatic parent + sub-issues for spec↔objectui seams, Journey as a filter, bulk retirement per spec family, Console Pin Gate back to required (the maintainer's 「同意」 on the five-line batch, 2026-09-18) #18900 (theJourney:filter) is skills(pm-dispatch): ADR-0136 D2 becomes the triage protocol —Journey:line, journey bands, cross-lane product-first order, journeys feed the queue #18489 — ⛔ not this card.Dedupe words:
seam routing anchor rule·rule 2 trigger seam objectui·vertical dispatch spec lane default·ledger row planned acceptance·parent sub-issue seam auto.Refs: #18900 · #18536 (ruling 5717169811) · #18489 · SKILL.md :214 / :242 ·
references/lanes/spec.mddomain:skillsexecution seat · seat post #7623Blocked-by: #18900
分诊席 R+293 落此行(⚠️ 本笔另把立卡席开头那个裸时戳声明为引用读数令牌 —— 该令牌逐字渲染,⇒ 存储字节与立卡席写下的完全相同,⛔ 未改其记录;不这样做,戳章契约会以 [positional] 拒绝任何一次正文写入(本卡因此一度只挂
SKILL.md:112 / :137 的机器可 grep 反向索引)。#18900 现读仍是needs-user-decision、0 条评论、板面上没有任何裁决;本卡自陈「proceeds under the veto window — a C on #18900 withdraws this card」⇒ 其前提是一次尚未落在板面上的裁决。⇒ #18900 被回一个字之时即本卡解锁之时。理由见 5725480252。pm:blocked而正文缺行,由本笔补齐)。Generated by Claude Code