Policy Editor

Workflow
Block

WYSIWYG governance rule editor with visual and code editing modes for AI policy configuration. Supports condition/action rules with enable/disable toggles.

Preview

Create and manage governance rules

Governance Policy Editor

3 rules configured

IF confidence < 80%
THEN require human review
IF task.priority === "high" && dueDate < tomorrow
THEN require_approval
IF task.assignee === null
THEN log_only

Props

PolicyEditor component API reference

PropTypeDefaultDescription
rules*PolicyRule[]Array of policy rules
onRulesChange*(rules: PolicyRule[]) => voidCallback when rules are modified
mode'visual' | 'code''visual'Initial editing mode
classNamestringAdditional CSS classes

PolicyRule Type

PropTypeDefaultDescription
id*stringUnique rule identifier
condition*stringRule condition (IF clause)
action*stringRule action (THEN clause)
enabled*booleanWhether rule is active

Usage

Import and implementation example

import { PolicyEditor, PolicyRule } from '@/blocks/workflow/policy-editor'

export default function Example() {
  const [rules, setRules] = useState<PolicyRule[]>([
    {
      id: 'rule-1',
      condition: 'IF confidence < 80%',
      action: 'THEN require human review',
      enabled: true,
    }
  ])

  return (
    <PolicyEditor
      rules={rules}
      onRulesChange={setRules}
      mode="visual"
    />
  )
}

Built With

3 components

This block uses the following UI components from the design system:

Features

Built-in functionality

  • Dual editing modes: Visual form builder and raw code editor
  • Rule management: Add, edit, and delete rules
  • Enable/disable toggle: Activate or deactivate individual rules
  • Condition builder: Define conditions with expression syntax
  • Action selection: Choose from governance actions
  • Code view: Read-only code representation of rules
  • Dark mode: Full dark mode support

Accessibility

Accessibility considerations

ARIA Attributes

Mode toggle uses native button elementsRule enable checkbox is properly labeledForm inputs have standard semantics

Keyboard Navigation

KeyAction
TabNavigate between rules and controls
Enter / SpaceActivate buttons or toggle checkbox

Notes

  • Condition and action displayed in monospace font
  • Disabled rules have reduced opacity
  • Rule count shown in header
  • Add rule button clearly labeled