Repository navigation
Description
Ruled: 6431014712 · letter A · 2026-10-27T01:00Z
Filing gate ②: a maintainer-only decision (a rule change to the triage yardstick; human-ruling floor #25344, "rules and process changes"). Maintainer, 2026-10-27, verbatim: 「立决策卡」, on the triage seat's list of open questions that had only been raised in round reports. Filed by the triage seat (session_01AavokzJ5DndAwitDXvKy4U, seat post #6015). ⛔ Not a claim. Dedupe: this question has been raised only in triage round reports and in triage comments ("the pending caliber question on app-driven additions"). No card carries it.
维护者速读
现行分诊口径是你定的「协议新增定 p1,其余 p2」,外加「发版本优先的都p1」。问题是:协议新增里有一大类是某个应用提出来的(HotCRM、hotclm 的业务需求),不是发版需要,但按现行口径一律 p1,和 18.2 发版任务抢同一批开发席位。请裁:A 维持现状,所有协议新增都是 p1;甲(B) 应用提出的协议新增默认 p2,被发版点名、或已经卡住下游上线的,仍按「发版本优先」升 p1;C 协议新增不再单独定级,和其他卡一样按影响定 p1/p2。选 A / 甲 / C?
Governing text
- The triage yardstick: 「协议新增定 p1,其余 p2」 and 「发版本优先的都p1」 (maintainer, in the triage seat thread).
- 「暂时不考虑发布 v19,后续协议变更的也是 18.x,而且尽量不考虑退役阶段,协议变更直接处理」: protocol changes ship directly in 18.x.
- The human-ruling floor, pm-dispatch: revoke every autonomous-adjudication channel — a seat analyses and recommends, every
needs_decisiongoes to the maintainer's director ruling batch (maintainer's word 2026-10-23) #25344: priority policy is a rules change.
Premises (measured 2026-10-27, 00:20Z)
- P1. Open p1 cards in this repo: 26 in total (devx 8, skills 7, spec 6, server 3, ui 1, cloud 1).
- P2. The protocol additions now graded p1 that an app or a downstream ruling asked for: spec(automation): a read-only
recordscreen field: a flow screen shows a record it created, by display name, as a link to the record page (#25872 ruling B) #26304 (the read-onlyrecord_linkscreen field; hotcrm#2285 waits on it), plugin-approvals: a record-anchored lock read,{ locked: boolean }for every reader of the record, so a non-participant is not offered an edit the server refuses (#25934 ruling A) #26314 (the approval lock read; ruled on console: a non-participant reader is offered inline edit on a record whose pending approval locks it (lockRecord: true), and the save answers 409 RECORD_LOCKED #25934), and the skills halves that ride with them, skills(objectstack-automation): teach the read-onlyrecord_linkscreen field, with an eval prompt (#26304 follow-up, #26184) #26347 and skills(automation): teach the record-anchored approval lock read (GET /approvals/records/:object/:recordId/lock,{ locked }for every reader) with one eval prompt #26362. Earlier p1s of the same kind: Demo staffing: an app has no way to declare the demo accounts its seed data is dealt to — every app re-writes a local "create users, assign positions, re-evaluate sharing" script (HotCRM has one; hotclm needs the same) #25777, Analytics datasets: no measure for the difference between two datetime columns (cycle time, per-stage duration, SLA overrun) — #16737 refused the wrong path, nothing provides the right one #25778, Seed datasets cannot carry a file: aField.filecolumn needs asys_fileid only an upload can mint, so a declarative seed either drops the row, breaks the ADR-0104 attestation, or inserts a dangling token silently #25779, spec(ui): a list-view grouping field can order its groups only by its own value, so a period label (Q4 2026 / Sep 2026) cannot be grouped in time order without a second grouping level — add an order-by field to GroupingFieldSchema #25786, spec/i18n: a report's label and description have no translation key —os i18n checkreports 100 % with zero report keys while the console's Reports index shows every report in English under zh-CN #25788, Flow actions: atype: 'flow'action cannot navigate to the record its run created —onSuccessis refused on flow actions and the run's response carriesoutput: {}#25800 and Flow screens: a flatscreenhas nofilefield type, so a multi-step wizard must create the record before its last step to collect a file — and closing the screen dialog leaves the run paused and the half-written record behind #25801, mostly landed now. - P3. Neither spec(automation): a read-only
recordscreen field: a flow screen shows a record it created, by display name, as a link to the record page (#25872 ruling B) #26304 nor plugin-approvals: a record-anchored lock read,{ locked: boolean }for every reader of the record, so a non-participant is not offered an edit the server refuses (#25934 ruling A) #26314 is named by the 18.2.0 release card [sweep] v18.2.0 release test sweep #25807.
Options
| Option | What | Consequence | Workload |
|---|---|---|---|
| A | Keep: every protocol addition is p1. | The release and app asks share the p1 pool. Today's four p1s stay p1. | none |
| 甲 (B) | An addition an app asks for defaults to p2. It goes up to p1 when the release names it, or when it blocks a downstream go-live with a date. | The p1 pool shrinks to release work and blockers. #26304 and #26314 drop to p2 unless one of those arms applies. hotcrm#2285 waits longer unless HotCRM gives a date. | triage relabels 4 cards; no PR |
| C | Drop the protocol rule: grade every card by impact like any other. | Simplest, but "protocol additions first" is no longer a rule. | triage relabels as cards come in; no PR |
Recommendation
A, for now. #26304 and #26314 are the only live app-driven p1 additions, both are already ruled by you, and both close a gap where the console offers what the server refuses. The p1 pool (26) is not crowding out the release today. If the pool grows past the release's capacity, 甲 is the lever. Triage would re-raise it then, with the count.
After the ruling
The triage seat applies the letter on its next round and records it on #6015. 甲 or C relabels the affected cards in one stroke, with a comment on each.
os-decision-facets
① 项目长远合理性:A 不新增特例;甲 新增「应用驱动」与「发版点名、下游阻塞」两条判定,口径更细,但需要分诊逐张判断。
② 实际业务拉动:今天受影响的有 4 张 p1(#26304、#26314、#26347、#26362);p1 池共 26 张,暂未挤占 18.2 发版。
③ 防 AI 犯错:A 是闭合规则,分诊不用判断来源;甲 依赖分诊判断「是不是应用提出的」,有误判空间。
④ 创业阶段不扩散:三案都不新增门禁或脚本,只改分诊口径。
Prior rulings read: 协议新增定 p1 · 发版本优先的都p1 · app-driven caliber → 2 maintainer yardstick lines (triage seat thread), no card; ADR none; thread: #6015
Generated by Claude Code
Activity
objectstack-fleet commentedon Oct 27, 2026
Brief-claimed-by: session_01KrKXQVvgYk2AJ4VkqMobyb · batch #404 · 2026-10-27T00:47Z
Director seat, summon #51 continuation (ledger objectstack#12708). Presented to the maintainer in batch #404 as item 2 of 4. Seat increment (re-read 2026-10-27T00:47Z; the card is not restated):
priority:p1cards in this repo. P2 has moved since filing: spec(automation): a read-onlyrecordscreen field: a flow screen shows a record it created, by display name, as a link to the record page (#25872 ruling B) #26304 and plugin-approvals: a record-anchored lock read,{ locked: boolean }for every reader of the record, so a non-participant is not offered an edit the server refuses (#25934 ruling A) #26314 are closed (landed), so the only live app-driven p1s are the two skills halves skills(objectstack-automation): teach the read-onlyrecord_linkscreen field, with an eval prompt (#26304 follow-up, #26184) #26347 and skills(automation): teach the record-anchored approval lock read (GET /approvals/records/:object/:recordId/lock,{ locked }for every reader) with one eval prompt #26362, bothpm:blockedbehind their code cards. The release card [sweep] v18.2.0 release test sweep #25807 names neither. The live cost of letter A today is therefore two skills cards in the p1 pool, not four.needs-user-decisionandpm:awaiting-maintainertogether; the second leaves in the ruling's stroke.Prior rulings read: 「协议新增定 p1,其余 p2」 · 「发版本优先的都p1」 → the triage seat thread [PM seat] triage (objectstack-wide) — 🟢 Routine · session_01AavokzJ5DndAwitDXvKy4U · trig_01NcnCtMS2tH46nUg1a5TaMJ (hourly) · state = body + the round records newer than it #6015, no card; ADR none; thread: [PM seat] triage (objectstack-wide) — 🟢 Routine · session_01AavokzJ5DndAwitDXvKy4U · trig_01NcnCtMS2tH46nUg1a5TaMJ (hourly) · state = body + the round records newer than it #6015.
objectstack-fleet commentedon Oct 27, 2026
Ruling: batch #404 item 2 · letter A · maintainer 「同意」 2026-10-27T00:55Z
Recorded by the director seat (summon #51 continuation,
session_01KrKXQVvgYk2AJ4VkqMobyb, ledger objectstack#12708). The maintainer answered batch #404 with 「同意」 — every seat letter. Brief 6430906534. Letter A: the triage yardstick stands as the maintainer set it — 「协议新增定 p1,其余 p2」 and 「发版本优先的都p1」 — for every protocol addition, app-driven or not. The card's re-raise condition is kept: when the open p1 pool outgrows the release's capacity, triage re-raises 甲 on a new card with the count. Not 甲 today (its only live effect would be relabelling the two blocked skills halves #26347 / #26362; #26304 and #26314 have already landed) and not C.Workload of the chosen letter: none. The triage seat records the ruling on #6015 and applies it on its next round.
Execution: no carrier work remains, so this card closes
completedin this act;needs-user-decisionandpm:awaiting-maintainerleave in the same stroke.Ruling-ref:names this comment.objectstack-fleet commentedon Oct 27, 2026
Closed
completedby the director seat · 2026-10-27T01:02ZRuled A by the maintainer (ruling 6431014712, 「同意」 to batch #404): the triage yardstick stands — every protocol addition is p1, 「发版本优先的都p1」 unchanged. No carrier work remains; the triage seat records the ruling on #6015 and re-raises 甲 on a new card with the count if the p1 pool outgrows the release.