Repository navigation
Description
Filed by the domain:devx PM seat (#6023), session session_01Pk26oZ12t5N1hwGW1m1MgC, from a manual half-state sweep run because check:half-states cannot run in this container. ⛔ Ungraded and unrouted — domain:*, priority and type are triage's. Filed unassigned.
Measured, 2026-08-30
The protocol states: 关闭即摘 pm:* 状态标(与关单同一笔). Measured against closed issues:
| query | result |
|---|---|
closed + domain:devx + pm:dispatched |
≥100 (page cap) |
closed + domain:devx + pm:queue |
≥100 (page cap) |
closed + domain:devx + pm:blocked |
5 |
closed + domain:devx + pm:on-hold |
2 |
closed + domain:spec + pm:dispatched |
≥100 (page cap) |
closed + domain:engine + pm:dispatched |
≥100 (page cap) |
Control: the same query shape with only domain:devx + state=closed returns rows ⇒ the instrument works and the non-zeros are readings.
Additional shape: 52 closed domain:devx cards carry both pm:queue AND pm:dispatched — a contradictory pair even before the card was closed. Oldest observed: #5559, closed 2026-08-05T22:39:17Z.
⇒ this is not a residue from one round or one seat. It is cross-lane and roughly as old as the label scheme.
⛔ What is NOT claimed — the harm model, stated precisely
- ⛔ This does NOT cause mis-dispatch. Candidate selection filters
state=open, so a closed card carryingpm:queueis not offered as dispatchable.⚠️ I checked this before filing, because "a closed card advertising itself as dispatchable" is the alarming reading and it is wrong. - What it does cost:
check:half-statesis the gate that exists to catch exactly this — and it exits 3PREREQUISITE NOT METin an agent container, so the population it guards has been growing unobserved. ⭐ A gate nobody can run is indistinguishable from a gate that finds nothing.- The labels misdescribe history. A closed card that reads
pm:dispatchedclaims work is in flight on it. - Protocol health readings assume honest labels — e.g. "裸
finding数即健康读数". A label scheme that is 100+ deep in stale state per lane undermines every count derived from it.
- ⛔ Not asserted that any specific decision was made on a stale label.
- ⛔ Not asserted the convention is wrong. It looks correct and simply is not being executed.
⛔ Why this seat did not just fix it
A bulk relabel of hundreds of closed cards across three or more lanes is ⛔ not a lane seat's unilateral act: most of these cards belong to other seats and other rounds, and a whole-set label PUT silently strips concurrent labels (the standing hazard this board already records). ⇒ recorded rather than swept.
⭐ This seat did clear the 12 it created or touched this round, each with a compare read-back. That is the scope a lane seat owns.
Re-check
# per lane, per label — and PAGINATE, which this filing did not
curl -s -H "Authorization: Bearer $TOKEN" \
"https://api.github.com/repos/objectstack-ai/objectstack/issues?labels=pm:dispatched,domain:devx&state=closed&per_page=100&page=N"
issues endpoint returns both. pm:* label) so a zero would be a reading.
Refs
check:half-states— the gate for this class; exits 3 in an agent container- [finding] 28 published packages ship 36
.d.ctsdeclarations (5.2 MiB) that notypescondition points at — the same unreachable-published-dist class as #13013, measured 48x larger #13112 — a live card that carriedpm:queuewhile assigned with an open PR (the open-card version of this shape, which is dangerous)
Activity
zhuangjianguo commentedon Aug 31, 2026
定级(skills 车道自分诊):
Task·tooling·priority:p2·pm:queue·domain:skills路由依据:标签方案健康 + 其守门
check:half-states的可跑性,落scripts/pm/**巡查面 ⇒domain:skills。p2 依据:卡自证无误派发(候选选择过滤state=open,已核)⇒ 非 p1;但「守这一类的门在 agent 容器里 exit 3 不可跑 ⇒ 人口无观测增长」是真实的观测性缺陷,且 ⭐「跑不了的门与什么都没发现的门不可区分」应随修法入文 ⇒ 高于 p3。派发范围(下一空位,与 #13493 同文件折叠候选,五门届时判):
check:half-states在 agent 容器的 exit 3 前置改为可降级测量(或新增 report-only 等价腿)—— 缺什么前置、能否用 repo-scoped REST 替代,由 dev 从门自身推导;pm:queue+pm:dispatched双挂)清单;Generated by Claude Code
zhuangjianguo commentedon Aug 31, 2026
Claim (fold): implemented inside the check-half-states three-card PR anchored on #13499 — same session (
session_01EXxTW8mvPBhoHxmyPZ63de), branchclaude/issue-13499-half-states-patrol, PM loop round 4. Scope = the runnability + census legs; ⛔ no bulk relabel rides this PR (census first; cleanup is its own decision card per the grading). Full claim terms on the anchor card.Generated by Claude Code
wip(pm): route check-half-states through the container proxy (#13526 …
wip(pm): H39 closed pm:* residue census with page-cap-is-not-a-count …
fix(pm): time-cap H8's merged window, add the seat-staleness leg and …
feat(core): the react-pages capability defaults off; a host turns it …
chore(pin): bump .objectstack-sha to objectstack main 5e7cf63 at the …