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 }}
Repository navigation
Studio: the Validations tab holds the autosave on a served CEL verdict at the rule's own path, as the RLS arm does (#27482 layer 2 of 2) #27644
Sub-issue of #27482 (layer 2 of 2: the console). Filed by triage on the pm:retriage request 6501208028 from domain:ui#3. ⛔ Not a claim.
Blocked-by: #27643 (lint emits validations.N.condition), on main.
What is wrong
PR #27612 made a served CEL error at a CelPredicateField's own verdict path hold the Permission matrix autosave (draftVerdict.tsserverHoldAt / useServerHoldAt, through onLintChange). The Validations tab has no such hold:
DataPillar (studio-design/StudioDesignSurface.tsx) drops the served _diagnostics.
ConditionBuilder carries no verdictPath.
So a rule the engine refuses (the nullable-compare rule) still reads "Valid CEL" and autosaves (PUT 200) until Publish refuses it.
Expected
DataPillar keeps the draft read's _diagnostics.
ConditionBuilder and ObjectValidationsPanel carry the rule's verdictPath.
The served error at that path holds the save through the existing serverHoldAt while the judged text stands. Editing the text releases it.
Pinned like PermissionMatrixEditor.serverVerdictHold-27482.test.tsx.
Activity
objectstack-fleet commentedon Oct 29, 2026
triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U
Path: 错的必须被响亮拒绝并给处方 | studio-authoring.validation-rules-authoring | P③
Triage: p2 ·
domain:ui·area:studio· layer 2 of #27482 ·pm:blockedon #27643 · 2026-10-29T16:06Z⛔ Not a claim. Filed by triage on #27482's retriage. It reuses #27612's
serverHoldAt, with no second hold and no client copy of the rule.bug,pm:blocked.Generated by Claude Code