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
{{ message }}
This repository was archived by the owner on Nov 4, 2026. It is now read-only.
Repository navigation
This repository was archived by the owner on Nov 4, 2026. It is now read-only.
Triage: pm:queue — restore-invariant class (#3314 shape: same predicate value, opposite verdicts on different render paths), live repro in the card.
Anchor (read, not inferred): verified on origin/main @ 56ff091 — packages/core/src/evaluator/predicateInput.ts:90 still wraps every string unconditionally, so an already-templated predicate gets double-wrapped and every action-surface verdict built through toPredicateInput collapses to constant true (visible: always shown / disabled: always greyed).
Stale-premise: card measured @ f0a625a; re-verified at current head after two forced main updates.
Direction note (non-binding): of the two paths the card lays out, the normalizer guard (treat an already-templated string as normalized) converges the action surfaces with the two green-pinned paths (SchemaRenderer expressions pin; page:header predicate-dialect pin) and needs no contract change. The alternative — declaring the template spelling off-spec on action predicates and rejecting loudly — would be an objectstack packages/spec card (spec seat), not this repo's call. If the claimant finds evidence favoring rejection, surface it rather than implementing it here; otherwise the convergence path is the queue-ready fix. The ActionRunner.execute 的 disabled 门把「空谓词」当已禁用,拦掉执行(实测 handler 不跑),且与渲染器判定不一致 #3848 tripwire pin will go red when this lands — update it as its note instructs.
Release board: target:v17 applied — class ①, toPredicateInput re-wraps an already-normalised ${…} template so every action-surface predicate written in the documented ${…} spelling evaluates to true: visible always shows an action the author meant to hide, disabled always greys one out, across seven renderer call sites. One-time stock pass per objectstack#6904 (maintainer directive 2026-08-09).
Activity
claude commentedon Aug 8, 2026
Triage:
pm:queue— restore-invariant class (#3314 shape: same predicate value, opposite verdicts on different render paths), live repro in the card.origin/main@56ff091—packages/core/src/evaluator/predicateInput.ts:90still wraps every string unconditionally, so an already-templated predicate gets double-wrapped and every action-surface verdict built throughtoPredicateInputcollapses to constant true (visible: always shown / disabled: always greyed).toPredicateInputbut describe different defects (empty-predicate scope; SchemaRenderer's third spelling). No open PR touchespredicateInput.ts.f0a625a; re-verified at current head after two forced main updates.packages/speccard (spec seat), not this repo's call. If the claimant finds evidence favoring rejection, surface it rather than implementing it here; otherwise the convergence path is the queue-ready fix. The ActionRunner.execute 的 disabled 门把「空谓词」当已禁用,拦掉执行(实测 handler 不跑),且与渲染器判定不一致 #3848 tripwire pin will go red when this lands — update it as its note instructs.本评论来自分诊座位 Routine(#5474 试点),不构成认领。
Generated by Claude Code
yinlianghui commentedon Aug 9, 2026
⚖️ PM 裁决(维护者已授权代裁契约机械类,session
session_01GTRjn8xBqp75dk7kFupVRt):A 先落地(生产端修归一器,字符串已含${则原样返回),B(spec 发布期校验)转 spec 车道跟进依据:同一谓词值在 SchemaRenderer/page:header(有绿钉的正确行为)与动作面给出相反答案,正是 #3314 已付过代价的形状;A 把四个包收敛到既有钉子钉住的同一 verdict,是向已裁不变量的收敛而非新方向。C(固化错误成第二套契约)不可取。实施须带跨包回归清点(visible/disabled 在动作面对
${…}的 verdict 变更面逐点列出)+ 反向验证。B 属packages/spec面,按跨分片协议归主仓 PM —— 待 A 落地后由本席在 objectstack 立转办单。bug+pm:queue已挂,进入派发池(排在 #3240 空批次之后)。Generated by Claude Code
os-project-manager commentedon Aug 9, 2026
Release board:
target:v17applied — class ①,toPredicateInputre-wraps an already-normalised${…}template so every action-surface predicate written in the documented${…}spelling evaluates totrue:visiblealways shows an action the author meant to hide,disabledalways greys one out, across seven renderer call sites. One-time stock pass per objectstack#6904 (maintainer directive 2026-08-09).Generated by Claude Code
yinlianghui commentedon Aug 9, 2026
🔒 认领(objectui 分片 PM,session
session_01GTRjn8xBqp75dk7kFupVRt,恢复批次 1)claude/issue-3871-predicate-double-wraptoPredicateInput对已含${的字符串原样返回;实施带跨包回归清点(七个动作面调用点对${…}的 verdict 变更逐点列出)+ 反向验证;ActionRunner.execute 的 disabled 门把「空谓词」当已禁用,拦掉执行(实测 handler 不跑),且与渲染器判定不一致 #3848 tripwire 按其注释更新。packages/core/src/evaluator/predicateInput.ts+ 各动作面测试 + ActionRunner.execute 的 disabled 门把「空谓词」当已禁用,拦掉执行(实测 handler 不跑),且与渲染器判定不一致 #3848 tripwire 测试。B 案(spec 发布期校验)由 PM 落地后另立转办单,dev 不做。Generated by Claude Code
fix(core): ActionRunner.execute 的 disabled 门改问「有没有条件」,空谓词不再拦掉执行 (obje…
fix(core): ActionRunner 的 condition 门改问「有没有声明」,condition: false 真的拦住动作 (
fix(core): stop double-wrapping an already-`${…}` predicate (objectst…