Repository navigation
[Decision] A finding filed without reach:, at first touch — close it not_planned (ruling B on the filing-gate completion card) or grade it p3 and fold it into a collector card (the 2026-09-25 「同意」 behind triage-duties line 50)? #24610
Description
Filing gate ② (a maintainer's decision). It arose while implementing ruling B on #24589 (PR #24602): a question born in execution gets its own card linked back to the ruled card, which is not re-boxed. Filed by skills seat 2 (seat post #19287, session_014kWeosxNDsHDT6TuQHLmC1, account os-warren). ⛔ Not a claim. The seat does not adjudicate; two of the maintainer's rulings meet on one population and the maintainer says which stands.
Reader who acts: the maintainer answers A or B. Then the domain:skills lane makes one line-neutral text PR under .claude/skills/pm-dispatch/references/ (governed Tier S), after PR #24602 has landed.
Dedupe (MCP semantic search on this repository, closed included): "finding without reach first touch close not_planned versus priority p3 fold into collector card triage-duties contradiction" → 34 hits. #24589 first (the ruled card, in flight on PR #24602); #20088 closed (the 2026-09-25 ruling 「同意」 that triage sends unproven findings to p3 — the origin of the line-50 clause); no open card on the contradiction itself. The dev's report on #24589 (6271355842, open_questions) is the first record of it.
维护者速读
- 事情: 您在 pm-dispatch: a self-labelled card missing filing-gate answers is completed by triage at first touch, not closed; lanes always mark pm:retriage; triage spot-checks queued self-labelled cards too #24589 裁的 B 写进
filing-gate.md:自贴卡缺件时分诊先补齐再定级,只有「四类皆非,或finding没有reach:」的卡才首触关 not_planned。可是分诊职责第 50 行(来自您 2026-09-25 的「同意」)写的是相反的事:缺reach:且非例外的 finding 定 p3、并入收口卡,「不因此关卡」。同一张卡,两条规则一开一关,分诊读到哪条就做哪样。实现 B 的 PR docs(pm-dispatch): triage completes a self-labelled card's derivable filing-gate answers at first touch; lanes label pm:retriage; the spot-check covers queued cards #24602 照裁决原文落了新行、没有碰第 50 行,所以这个矛盾要您定。 - 选项: A = 改第 50 行:没有
reach:的 finding 首触就关 not_planned,一行写清缺什么,重开免费;p3 并入收口卡只留给带了reach:但够不上派发的 finding。B = 保留第 50 行:缺reach:的 finding 仍定 p3 并入收口卡,把新行收窄成只关「四类皆非」的卡(这偏离 B 的原文,等于对 pm-dispatch: a self-labelled card missing filing-gate answers is completed by triage at first touch, not closed; lanes always mark pm:retriage; triage spot-checks queued self-labelled cards too #24589 补裁一次)。 - 推荐: A。一类卡一条规则,和 09-21「没必要的 issue 就不要创建」同向;关得响亮(缺什么写在关单那一行),比静默停在 p3 更不容易藏住真缺陷。
- 末句: A / B?
One-sentence problem
A finding filed without a reach: line now has two first-touch outcomes in the protocol — closed not_planned (the new filing-gate line) or graded p3 and folded into a collector card (triage-duties line 50) — and which one a card gets depends on which line the triage seat reads first.
Governing text
.claude/skills/pm-dispatch/references/filing-gate.mdline 27 on PR docs(pm-dispatch): triage completes a self-labelled card's derivable filing-gate answers at first touch; lanes label pm:retriage; the spot-check covers queued cards #24602's heada7111c84e(ruling B, verbatim from pm-dispatch: a self-labelled card missing filing-gate answers is completed by triage at first touch, not closed; lanes always mark pm:retriage; triage spot-checks queued self-labelled cards too #24589): 「补不齐(四类皆非,或finding无reach:)者才因缺件首触即关 not_planned,一行点名所缺。」 Re-check:git show a7111c84e:.claude/skills/pm-dispatch/references/filing-gate.md | sed -n 27p..claude/skills/pm-dispatch/references/triage-duties.mdline 50 onorigin/main5a871e4e4: 「缺reach:且非例外 ⇒ 定priority:p3,并入收口卡或清扫卡,⛔ 不单独派发、不因此关卡。」 Re-check:grep -n '不因此关卡' .claude/skills/pm-dispatch/references/triage-duties.md→ 1 hit (control:grep -c 'reach:'in the same file → more than 1).- Rulings: pm-dispatch: a self-labelled card missing filing-gate answers is completed by triage at first touch, not closed; lanes always mark pm:retriage; triage spot-checks queued self-labelled cards too #24589 ruling B (the maintainer's 「B」, 2026-10-19, quoted on the card); skills(pm-dispatch / os-dev): file a finding only with measured reachability (checked by the finder at filing), fold same-family findings into a class-closure card, triage sends unproven ones to p3 — maintainer 「同意」 #20088 「同意」 (2026-09-25, the measured-reach rule: unproven findings go to p3 and fold into a class-closure card; the dev traced line 50 to commit
7b068877c). SKILL.md〈状态模型〉findingrow: 「立卡三类内待首次定级,定级即离标;三类外关 not planned」;SKILL.md〈报告契约〉: 「门外已立卡关 not planned」;triage-duties.mdline 79: 「三类内无证据拒收」.
Protocol declaration: no spec, runtime or published surface moves; both options edit one line of pm-dispatch reference text (governed Tier S). Neither adds a gate.
Premises, each with its re-check
- The two lines contradict on the same population (a non-exception
findingwith noreach:at first touch). Re-check: the two greps above. - PR docs(pm-dispatch): triage completes a self-labelled card's derivable filing-gate answers at first touch; lanes label pm:retriage; the spot-check covers queued cards #24602 implements the ruled text verbatim and leaves line 50 untouched, by the dispatch's own boundary (three named lines only). Re-check:
GET /repos/objectstack-ai/objectstack/pulls/24602/files→ three files, +4/−4. - Line 50 is a maintainer ruling, not seat text: skills(pm-dispatch / os-dev): file a finding only with measured reachability (checked by the finder at filing), fold same-family findings into a class-closure card, triage sends unproven ones to p3 — maintainer 「同意」 #20088 is closed with 「同意」 in its title. Re-check:
GET /repos/objectstack-ai/objectstack/issues/20088.
Options × real cost × workload
| Option | What it does | What the maintainer feels | Workload |
|---|---|---|---|
| A — close at first touch (recommended) | Amend triage-duties.md line 50 in place: a non-exception finding with no reach: is closed not_planned at first touch with a one-line reason naming the missing item (and the collector card, if one exists); the p3 fold stays for findings that carry reach: but sit below the dispatch bar. |
Fewer open cards; a filer gets a loud, reopenable close instead of a card parked at p3. Reverses the 「不因此关卡」 clause of the 2026-09-25 ruling. | skills lane · 1 text PR, one line, line-neutral at the file's ceiling (120/120) · precedent PR #24521 (+2/−2). |
| B — keep the p3 fold | Keep line 50; narrow the new filing-gate line 27 so it closes only cards that are none of the four categories; a reach-less finding is graded p3 and folded into a collector card. | The 09-25 rule stands; the new line departs from the verbatim B text, which the maintainer re-rules here. | skills lane · 1 text PR, one line, line-neutral (64/64) · same precedent. |
Business meaning
- A: an unsubstantiated defect report is closed with "show where it bites", and reopening is free once it is measured.
- B: the same report is parked as low priority inside a themed collector until someone measures it.
Four-axis analysis (业务立场)
- ① 项目长远合理性: 一类卡一条规则。A 让「首触」只有一种答案,和
SKILL.md的两处既有倾向(三类外关 not planned、门外已立卡关 not planned)同向;B 保留两条规则只能靠收窄新行,等于把 B 裁决再裁一次。 - ② 实际业务拉动: 09-25 立第 50 行是因为 dev 顺手报的 finding 常缺测量时间,成批出现;10-19 裁 B 是因为自贴卡缺件悬空、关了重立每张约四笔写入。两次都是真实事故;A 省的是关卡后的重立成本(重开免费),B 省的是 dev 发现被丢的风险。
- ③ 防 AI 犯错: A 关得响亮:关单那一行写明缺什么,重开要补
reach:;B 把没测过的卡静默停在 p3,真缺陷可能藏数周。A 的出错形态是误关一张真缺陷卡,但代价是一次重开;B 的出错形态是看不见。 - ④ 创业阶段不扩散: 两者都不加门禁、不加标签。A 开卡更少;B 停放更多。09-21 的原话「没必要的issue就不要创建」偏向 A。
os-decision-facets
- ① 项目长远合理性:A 一类卡一条规则,B 靠收窄新行保留两条。
- ② 实际业务拉动:两条规则各出自一次真实事故;A 省重立成本,B 省丢发现风险。
- ③ 防 AI 犯错:A 响亮关单可重开;B 静默 p3 停放。
- ④ 创业阶段不扩散:零新门禁;A 开卡更少。
Prior rulings read: reach-less finding first touch, p3 fold, close not_planned → 34 hits; #20088 「同意」 (closed), #24589 「B」 (open, in flight); thread: 6271355842 (the dev's open_questions).
Recommendation + confidence gap
A. By ① alone: in two years the filing gate is one door with one answer per population, and the collector-card fold is the home of measured-but-small findings, not of unmeasured ones. B is not taken because it keeps two first-touch rules alive by narrowing a line the maintainer just ruled verbatim. Blind spots, stated: the weekly count of reach-less findings is not measured here; the 09-25 ruling's reasoning is read from its clause and #20088's title, not from the chat that produced it.
自检行: 只看①选 A;②③④ 是否翻转:否。
After the ruling
- A: the skills lane files one PR on
triage-duties.mdline 50 (line-neutral, ≤120 bytes) after PR docs(pm-dispatch): triage completes a self-labelled card's derivable filing-gate answers at first touch; lanes label pm:retriage; the spot-check covers queued cards #24602 lands; the closing line names the missing item and, when one exists, the collector card. - B: the skills lane files one PR narrowing
filing-gate.mdline 27 to 「四类皆非」, and the maintainer's word is recorded on pm-dispatch: a self-labelled card missing filing-gate answers is completed by triage at first touch, not closed; lanes always mark pm:retriage; triage spot-checks queued self-labelled cards too #24589 as the re-ruling it quotes.
Related
- pm-dispatch: a self-labelled card missing filing-gate answers is completed by triage at first touch, not closed; lanes always mark pm:retriage; triage spot-checks queued self-labelled cards too #24589 — the ruled card (B); PR docs(pm-dispatch): triage completes a self-labelled card's derivable filing-gate answers at first touch; lanes label pm:retriage; the spot-check covers queued cards #24602 implements it; dev report 6271355842 carries the fork as
open_questions. - skills(pm-dispatch / os-dev): file a finding only with measured reachability (checked by the finder at filing), fold same-family findings into a class-closure card, triage sends unproven ones to p3 — maintainer 「同意」 #20088 — the 2026-09-25 ruling behind
triage-duties.mdline 50.
Activity