Repository navigation
Package-provided flows are read-only in Studio — no design mode and no node inspector on any node, which makes every checklist clause needing a node panel on a *shipped* flow unreachable (fixture limit for QA, but a product question worth a ruling) #7571
Description
Activity
Triage:
needs-user-decision; removed the co-appliedpm:queue+finding— the card arrived carrying both queue and finding, and its own text rules neither: it explicitly asks for a maintainer product ruling ("may an operator inspect a shipped flow's nodes read-only?"), which is the decision box, not the dispatch queue and not a held observation. The two follow-up shapes it records (fixture-side checklist change vs. objectui Studio read-only inspection view) both hang on that ruling.- Routing deliberately left blank (recorded leave-blank, same discipline as The Account app's Notifications entry 403s for every non-admin — no permission set grants sys_inbox_message #7344/finding: an approver routed a request can be unable to open the record it concerns — the inbox's record link dead-ends on "Record not found" #7345/Design: does approver routing imply record read visibility? (#7345 model half) #7497): the landing forks three ways —
docs/qa/platform-checklist/(devx),examples/app-showcase/fixtures, or objectui Studio (cross-repo) — and the ruling is the selector. Labelling now would pre-answer the question the card asks. - Dup check: no open card in objectstack/objectui names shipped-flow inspectability; the two blocked checklist clauses (
time-relative-triggerclause 0,connector-dispatch-matrixclause 3) are recorded only on run QA run · automation (FULL area) · a86db175 · 2026-08-11 · 5 PASS / 3 PARTIAL / 2 FAIL #7516's card. - Stale-premise: behavioural observation against framework
a86db175(current QA build); no in-tree anchor to re-verify. The writable-draft control keeps the observation sharp. - Decision-box dependency note (standing instruction ④): no open card carries a
Blocked-by:line pointing here yet; the two named checklist clauses stay blocked-in-fact until ruled — worth an early glance if a QA re-run of those areas is planned.
本评论来自分诊座位 Routine(#5474 试点),不构成认领。
Generated by Claude Code
- Routing deliberately left blank (recorded leave-blank, same discipline as The Account app's Notifications entry 403s for every non-admin — no permission set grants sys_inbox_message #7344/finding: an approver routed a request can be unable to open the record it concerns — the inbox's record link dead-ends on "Record not found" #7345/Design: does approver routing imply record read visibility? (#7345 model half) #7497): the landing forks three ways —
Maintainer ruling recorded 2026-08-11 (PM session, executing the maintainer's direct instruction in chat — verbatim: 「接受你的全部建议,请更新 issue 的状态和标签」, accepting the four-lens decision-inbox review in full).
Ruling: product direction acknowledged, implementation deliberately deferred. Operators SHOULD be able to inspect — read-only — a shipped (package-provided) flow's node configuration: inspection is a read, and read-only correctly forbids editing, not seeing. But this lands in objectui's Studio at non-trivial cost with no customer pull yet, so it is parked, not queued, and it is NOT v17.
Hold (2026-08-11). Reason: startup-focus — no measured demand; the QA-side need has a cheaper path. Restart condition: real customer demand for debugging a shipped flow in production, or Studio flow-designer work touching this area anyway (then ride along).
QA side meanwhile: drive the two blocked checklist clauses (
time-relative-triggerclause 0,connector-dispatch-matrixclause 3) with a writable draft fixture.State:
needs-user-decision→pm:on-hold.
Generated by Claude Code
huangyiirene commented
on Aug 28, 2026 CollaboratorAuthorMore actions分诊复核:本卡没有缺陷,
domain:*的空白是对的 —— 更正我自己的普查分诊座位,session
session_01Aujz2zykf5LXt3T98gRsGe。⛔ 无标签改动。为什么会看到这张卡
本席第 12 轮跑了每日全量(不带
since窗口),把两仓 572 张 open 卡里缺domain:*的挑出来做半标注普查 —— 因为这类卡对每个按车道过滤的视图都不可见。本卡在名单上。复核结论:⛔ 不打标签
卡自己写了理由,而这个理由成立:
No
domain:*label applied deliberately: the landing place depends on the ruling above and is genuinely ambiguous between three candidates — the QA checklist underdocs/qa/platform-checklist/(devx), the showcase fixtures underexamples/app-showcase/(automation subsystem), and objectui's Studio (cross-repo). Labelling it now would guess at the answer this card is asking for.⇒ 锚定规则要的是「修复落地的那个包的域」,而本卡的落点取决于裁决结果:裁「working as intended」⇒ 落夹具侧;裁「运维应当能查看已发布 flow」⇒ 落 objectui 的 Studio,跨仓。给它打任何一个 domain,都是在替它回答它正在问的问题。
⇒ 空白不是漏标,是信息。本卡从半标注名单中移除。
⛔ 因此更正我自己的普查
第 12 轮我报「半标注 17 张」。至今已核出两张是有意且论证过的空白,不是缺陷:
- platform-admin re-anchor L8 (cloud seam): control-plane env injection + invite-only interaction — cloud seat leg, designed blind #11977(platform-admin L8 cloud seam)—— 带
repo:cloud,而跨仓卡的路由维度本就是repo:*而非domain:*; - 本卡 —— 落点待裁,空白即信息。
⇒ 17 → 15。
⚠️ 记在这里而不是只写在座位贴里,是因为下一个跑普查的人会再次撞上这两张,而两次都得出「这是缺陷」的结论才是真正的浪费。普查的输出是候选名单,不是判决;每一张仍要读过才算数。一条不改状态、但值得维护者知道的观察
本卡目前
pm:on-hold,Restart-when:是机会式的(「任何 objectui PR 碰到 Studio flow-designer 节点检查器时顺带做」或「客户报告需要在生产环境调试已发布 flow」)。这个挂起条件本身是合理的。⚠️ 但卡的实质是在请求一次产品裁决 —— 它自己的话:"deserves a maintainer's glance rather than being buried in a run's fixture list",而且它把问题提得很干净:检查是一次「读」。只读正确地禁止编辑一个包的 flow;它并不显然地推出运维不得查看已发布 flow 的节点是怎么配的 —— 而在生产环境调试包内 flow 的运维,需要的正是这个。⇒ 若维护者愿意给一句,本卡可以立刻转
needs-user-decision并由本席补四棱块。⛔ 本席不自行翻状态:那是另一个席位 2026-08-11 做过的定级,而机会式重启条件今天仍然成立,没有新证据推翻它。
Generated by Claude Code
- platform-admin re-anchor L8 (cloud seam): control-plane env injection + invite-only interaction — cloud seat leg, designed blind #11977(platform-admin L8 cloud seam)—— 带
分诊裁定:⛔ 刻意不给
domain:*—— 并把这条裁定写在这里,免得每一轮重扫一次priority:p3· 保留pm:on-hold(2026-09-04T19:3xZ 一轮,本评论来自分诊座位)。本卡正文的「Lane」段是对的,本席采纳而不是覆盖它。 落点在三个候选之间真实地二义(
docs/qa/platform-checklist/= devx ·examples/app-showcase/= 引擎自动化 · objectui 的 Studio = 跨仓),而选哪一个正是本卡要问的那个问题的答案。锚定规则是「域 = 修复落地的包,读代码定,⛔ 不按标题猜」—— 在裁决之前,任何domain:*都是猜。⇒ 打一个标签让它「看起来被处理过」,是本轮口径修正正在消灭的那种假绿。⛔ 也没有送进决策箱,这同样是刻意的。 判据是决策箱的吞吐是稀缺资源:箱里现有 17+ 张,含一张 p0 安全卡(#15409)。本卡有一条成本近乎为零的替代触发器,就写在正文首行:
Restart-when:any objectui PR touches the Studio flow-designer node inspector (ride along with a read-only inspection view for package-provided flows), or a customer reports needing to debug a shipped flow in production⇒ 它不需要维护者专门开一次会来裁;它需要的是下一次有人碰那块代码时被想起来,而
pm:on-hold+Restart-when:正是本仓为这种卡设计的形状。⚠️ 但这个判断有一个明确的失效条件,写在这里以便被推翻:若该 Restart 触发在合理时间内没有发生(例如 objectui 的 inspector 长期无人动),那么「搭便车」就等于「永不」,届时应改送决策箱。本卡自 2026-08-11 挂起至今约 24 天 ——⚠️ 已经接近那个边界,下一任分诊席若看到它仍在原地,请直接改判送箱,并把本评论当作已经权衡过一次的记录,而不是从头再权衡一遍。p3 判据:QA 侧后果是两条 checklist 子句走
blocked(fixture)(time-relative-trigger子句 0、connector-dispatch-matrix子句 3),而卡面已给出可用的替代夹具(可写草稿流);产品侧的那半是「运维能不能只读地检视一个已发布流的节点配置」,是真实但未见客户报障的问题(正文自陈「a plausible product gap」,⛔ 未测量到需求)。⇒ 不是 p2。⛔ 本席不认领、不派发、不代裁。
Generated by Claude Code
objectstack-fleet commented
on Sep 23, 2026 ContributorMore actions关
not_planned—— 维护者逐张复核 on-hold 卡时同意关闭;产品方向留在这里备查分诊席(
session_01Tw7jnJinGHvoGSi8aFkhPJ),2026-09-23T08:01Z。维护者 2026-09-23 在分诊会话里逐张复核pm:on-hold卡,对第二组的回复原文:「8006 保留,其他同意」。本卡在那一组里的建议是关闭,维护者同意了。保留的产品方向(不因关闭而作废)
2026-08-11T08:09Z 的裁定(
5250634448):运维应当能够只读地查看一个随安装包带来的 flow 的节点配置 —— 查看是一次「读」,只读正确地禁止编辑,并不禁止看。这个方向成立。以后谁来做 objectui Studio 的 flow 设计器节点检查器,应当把「已安装包里的 flow 可以只读打开检查器」算进去。为什么关
- 挂起的条件是「顺带做」:任何 objectui PR 碰到节点检查器时一起做,或者有客户报告需要在生产环境调试已发布的 flow。6 周两条都没有发生。
- 2026-09-04T19:37Z 分诊(
5545577282)写下过这条判断的失效条件:如果顺带做的机会在合理时间内一直没出现,「顺带」就等于「永不」。而且这个提醒挂在本仓,改 Studio 的 objectui 开发者平时看不到。 - 那条评论同时交代:下一任分诊席如果看到本卡仍在原地,就直接送维护者决定。本次复核就是这样处理的,维护者今天的回答是关闭。
- QA 那一侧当时就有便宜的替代办法:用可写的草稿 flow 作夹具,驱动
time-relative-trigger子句 0 和connector-dispatch-matrix子句 3。
⚠️ 有一处本席读不到:GitHub 显示本卡有 5 条评论,API 只返回 4 条,最后一条可读评论是5545577282。卡片最后更新时间是 2026-09-18,缺的那一条很可能就是那一次留下的,发评论的账号已被隐藏。⛔ 本席没有读到它的内容,所以也不对它做任何断言。重开条件
有客户报告需要在生产环境查看或调试一个已发布 flow 的节点配置 —— 带着这份报告重开,按上面的方向在 objectui 立卡。
关闭理由:
not_planned,同时摘掉pm:on-hold。
Generated by Claude Code
Restart-when: any objectui PR touches the Studio flow-designer node inspector (ride along with a read-only inspection view for package-provided flows), or a customer reports needing to debug a shipped flow in production
Symptom
Opening a package-provided (shipped) flow in Studio offers no design mode and no node inspector for any node. There is no panel from which a node's configuration can be read, so any verification step that needs to look at a shipped flow's node config cannot be performed at all.
Concrete cost in the automation run — two clauses went
blocked(fixture)rather than pass or fail:time-relative-trigger— clause 0;connector-dispatch-matrix— clause 3.Verified contrast: a writable draft flow does open the inspector. So this is not a broken inspector; it is that the inspector is unavailable specifically on flows that arrived via a package.
Two readings, both recorded honestly
The run classified this as a fixture limit, not a product defect, and that classification is reasonable: packages install read-only, the writable-draft path works, and the checklist's clauses could be satisfied against a draft fixture instead.
But the other reading deserves a maintainer's glance rather than being buried in a run's fixture list: "you cannot inspect a shipped flow's nodes in Studio" is a plausible product gap. Inspection is a read. Read-only correctly forbids editing a package's flow; it does not obviously imply the operator may not see how a shipped flow's nodes are configured — and an operator debugging a package flow in production has exactly that need. Whether design mode is the right vehicle for a read-only inspection view is the question; that is a product call, not a QA call.
This card asks for that ruling, and records the QA-side consequence either way. If the ruling is "working as intended", the follow-up is fixture-side (give the affected checklist clauses a writable draft flow to drive, or mark the clauses shipped-flow-inapplicable). If the ruling is "operators should be able to inspect a shipped flow", the fix is cross-repo in objectui's Studio.
Root cause
Not located by the run beyond the observed boundary: package-provided flows open without design mode, while a writable draft opens the inspector normally. No Studio source was traced to the gate that decides this.
Reproduction
time-relative-trigger/connector-dispatch-matrix.Lane
No
domain:*label applied deliberately: the landing place depends on the ruling above and is genuinely ambiguous between three candidates — the QA checklist underdocs/qa/platform-checklist/(devx), the showcase fixtures underexamples/app-showcase/(automation subsystem), and objectui's Studio (cross-repo). Labelling it now would guess at the answer this card is asking for.Source
Extracted from the QA run #7516 (framework a86db17).
Generated by Claude Code