Skip to content

[P0][security] Action disabled (CEL form) silently ignored #1885

Description

@os-zhuang

Part of the metadata liveness audit umbrella #1878 (P0 security cluster).

Problem

Action disabled in its CEL (predicate) form is silently ignored. The renderer reads a non-spec boolean enabled (action-button.tsx:56); the spec's disabled predicate has zero consumers. So an action gated by a CEL disabled expression (e.g. "disable unless record is approved") renders as fully enabled — a guard the author believes is active does nothing.

Decision required (enforce or remove)

  • Enforce: evaluate the disabled CEL predicate in the renderer and reflect it in the button's disabled state (reconcile with / replace the non-spec enabled key).
  • Remove: if only a static boolean is supported, drop the CEL form from the spec and align the spec key with what the renderer reads.

Evidence

  • docs/audits/2026-06-actionschema-property-liveness.md
  • action-button.tsx:56 (reads non-spec enabled)

Metadata

Metadata

Assignees

No one assigned

    Labels

    priority:p0Critical: blocker, must ship before MVPsecurity

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions