Handbook · Reference · Validation

Validation and policy

Where in the UI. JSON tab markers; Author chat validate; export gates.

LayerQuestionWhen it blocks
StructuralIs this valid Template V2 JSON? Missing ids, wrong shapes, unknown component types.Must be clean before a template can round-trip.
SemanticDoes it mean something coherent? Unknown expression ids, illegal DataRefs, field-binding cycles, unplugged Blockly plugs.Errors block export; warnings should be read.
PolicyIs this allowed in the chosen profile (preview / development / production-alpha)? Components, events, host methods, capabilities.Production-alpha is what catalog publish should match.

Policy profiles

The editor can validate as preview (permissive), development, or production-alpha (strictest of the three). Policy codes include policy.component_not_allowed, policy.action_type_not_allowed, policy.capability_not_allowed.

Semantic extras in the editor include unplugged Blockly JSON plugs (semantic.script_unplugged_parameter).

Sources: structuralValidatorAdapter.ts, semanticValidatorAdapter.ts, policyProfiles.ts.