CalmUI
Debugging

Diagnostic Codes

What each numbered CUI#### code in the Problems panel and CLI output means.

Every diagnostic the compiler and layout engine produce carries a code such as CUI1211. Problems in Studio and calmui validate/calmui build on the command line both print it next to the message. Search this page for the exact code, or use your browser's find to jump to it: each row below has a matching link anchor (#CUI1211).

CUI0000: uncoded message

CUI0000 is not a real diagnostic family. It is the fallback the CLI prints when a Diagnostic reaches it with an empty code. Every diagnostic the compiler and layout engine emit today carries a real code; seeing CUI0000 means a message somewhere still has none. Report it, including the full message text, so the missing code can be filled in.

Code ranges

RangeMeaning
CUI1000-1099CSS parse errors (unbalanced braces, malformed selectors)
CUI1100-1199A declaration's property name is outside CSS Profile v0.4
CUI1200-1299A supported property's value fails its grammar/range check
CUI1300-1399Effects/animation diagnostics (transitions, keyframes)
CUI2000-2199Component/compiler diagnostics (source parsing, scoping, packaging)
CUI2200-2299Runtime/package diagnostics
CUI3000-3099Layout diagnostics, including CUI3000: a declaration CSS Profile accepted but the layout engine itself dropped
CUI4000-4099Store runtime diagnostics (CUI4001 is reserved and not emitted today)

CUI2000-2299 diagnostics are real and ship today; they are defined inline at each check in the compiler rather than in the numbered registry this page's table is generated from, so they have no row below. Common problems and the component pages that raise a specific CUI2#### code link to it by number in their own text.

The registry is append-only: once a code ships, it keeps its meaning permanently, even after the capability it flags is fully implemented and the code can no longer fire, so an old log or screenshot referencing it stays decodable.

Registered codes

CodeSeverityCategoryMeaning
CUI1000ErrorCssParseUnbalanced CSS braces or an unterminated CSS rule block
CUI1001ErrorCssParseUnterminated CSS attribute selector
CUI1002ErrorUnsupportedCssCSS Profile v0.3 supports only exact equality attribute selectors
CUI1100ErrorUnsupportedCssProperty is intentionally outside the CalmUI 2D CSS profile (e.g. perspective, transform-style)
CUI1101ErrorUnsupportedCssCSS Profile v0.3 does not support custom properties named just `--`
CUI1102ErrorUnsupportedCssUnknown CSS property name
CUI1200ErrorUnsupportedCssUnsupported display value
CUI1201ErrorUnsupportedCssUnsupported position value
CUI1202ErrorUnsupportedCsspointer-events supports only auto|none
CUI1203ErrorUnsupportedCssUnsupported cursor keyword
CUI1204ErrorUnsupportedCsscontent supports quoted text, none, or normal
CUI1205ErrorUnsupportedCssUnsupported text-decoration / text-decoration-line value
CUI1206ErrorUnsupportedCsstext-overflow supports clip|ellipsis
CUI1207ErrorUnsupportedCssoverflow-wrap supports normal|anywhere
CUI1208ErrorUnsupportedCssUnsupported vertical-align value (2D subset only)
CUI1209ErrorUnsupportedCssbackdrop-filter supports none or blur(0..64px)
CUI1210ErrorUnsupportedCssfilter supports only brightness()/contrast()/saturate()/grayscale()
CUI1211ErrorUnsupportedCssbox-shadow: too many layers or unparsable value
CUI1212ErrorUnsupportedCsstext-shadow: too many layers, blur out of range, or unparsable value
CUI1213WarningUnsupportedCssborder-style keyword renders as solid (double/groove/ridge/inset/outset)
CUI1214ErrorUnsupportedCssoutline supports solid color outlines only
CUI1215ErrorUnsupportedCssscrollbar-width supports auto|thin|none
CUI1216ErrorUnsupportedCssscrollbar-color supports <thumb-color> <track-color> | auto
CUI1217ErrorUnsupportedCssoutline-offset requires a length
CUI1218ErrorUnsupportedCssOnly non-repeating linear/radial gradients are supported
CUI1219ErrorUnsupportedCssAt most eight background layers are supported
CUI1220ErrorUnsupportedCssIncomplete gradient function syntax
CUI1221ErrorUnsupportedCssGradient layers require between two and eight color stops
CUI1222ErrorUnsupportedCsstransform supports only 2D functions
CUI1223WarningUnsupportedCssUnrecognised length for a length-family property (width/height/margin/padding/inset/gap/etc.)
CUI1224WarningUnsupportedCssUnrecognised color value
CUI1225WarningUnsupportedCssUnparsable transform function value
CUI1226WarningUnsupportedCssUnrecognised transform-origin value
CUI1227WarningUnsupportedCssUnrecognised background-position value
CUI1228ErrorUnsupportedCssUnsupported background-repeat keyword
CUI1229WarningUnsupportedCssUnrecognised background-size value
CUI1230ErrorUnsupportedCssUnsupported overflow/overflow-x/overflow-y value
CUI1231ErrorUnsupportedCssUnsupported white-space value
CUI1232ErrorUnsupportedCssOnly non-repeating conic-gradient() is supported
CUI1300WarningUnsupportedCssAnimating width/height requires layout recalculation every frame; prefer transform: scale()
CUI1301WarningUnsupportedCssUnsupported CSS transition property
CUI2213ErrorComponentGraphScript loc(key, fallback, params?) key argument must be a string literal (ADR-0057)
CUI2214ErrorComponentGraphScript loc(key, fallback, params?) fallback argument must be a string literal (ADR-0057)
CUI2215ErrorComponentGraphScript loc(key, fallback, params?) requires a literal fallback argument (ADR-0057)
CUI2216ErrorComponentGraphScript loc() fallback must not use ICU plural/select/number/date argument syntax (ADR-0057)
CUI3000WarningLayoutA declaration CalmUI's CSS Profile accepted was not applied by the layout engine (dropped-declaration detector, opt-in)
CUI3034ErrorComponentRuntimeAn ExpressionProgram's JumpIfFalse/Jump instruction (R5 ternary ?: profile extension) has a non-forward or out-of-range operand, or the package is missing .cuipack 1.13 / PackageFeature::ExtendedExpressions
CUI3035ErrorComponentRuntimeA ComponentScriptModule localization expression index is invalid, or the package is missing .cuipack 1.14 / PackageFeature::ScriptLocalization (ADR-0057)
CUI4001ErrorComponentRuntimeStore value rejected by schema validation (type mismatch or unknown field id); emitted by Studio's offline WASM preview when a mock Store value fails validation

On this page