Want to skip the docs? Check out pandamastery.com - the best way to learn Panda CSS

reference
diagnostics

Diagnostics Reference

The diagnostic codes Panda's compiler emits for recoverable config and extraction issues.

What a diagnostic is

The diagnostic system gives recoverable issues, ones that don't stop the build, a structured shape: a stable code, a human-readable message, a severity (info, warning, or error), and where relevant a source span or 1-indexed line/column location. Fatal setup failures (a config file that won't load at all) still throw, they aren't replaced by this, diagnostics are specifically for issues you can act on without the build stopping.

The code field is a stable public API in its own right, useful for tooling (an ESLint rule, a CI check, an editor integration) to key off, independent of however the human-readable message wording changes over time.

Codes

Grouped by what they're about, not necessarily exhaustive:

Config and tokens

  • config_artifact_name_conflict, config_breakpoint_units_mixed, config_hooks_removed, config_condition_selector_invalid
  • config_token_circular_reference, config_token_key_contains_space, config_token_missing_reference, config_token_missing_value, config_token_nested_value, config_token_self_reference, config_token_unknown_reference, token_dictionary_build_failed

Deprecated usage

  • deprecated_token_used, deprecated_utility_used

Design systems (see Consume a design system)

  • design_system_cycle, design_system_in_include, design_system_manifest_invalid, design_system_manifest_not_found, design_system_parent_not_found, design_system_resolve_failed

Static CSS authoring (see Static CSS Generation)

  • static_css_pattern_missing_transform, static_css_pattern_unknown, static_css_property_unknown, static_css_recipe_unknown, static_css_recipe_variant_unknown, static_css_recipe_variant_value_unknown, static_css_recipes_missing_snapshot, static_css_token_reference_unknown, static_css_wildcard_large, static_css_wildcard_empty

Extraction

  • js_parse_error, panda_call_unextractable, recipe_variant_dynamic, unknown_condition, invalid_color_opacity_modifier, layer_name_collision, transform_callback_failed, include_package_resolution_failed, preset_resolution_failed

Two of these are worth knowing about in advance since they change behavior based on your config, not just report a problem: panda_call_unextractable only fires for a direct style call whose arguments are dynamic enough that no CSS can be generated for it at all, and it's disabled automatically when jsxFramework is set, since component APIs commonly forward style objects through props in ways that are too ambiguous to flag reliably. recipe_variant_dynamic covers the related but different case of a recipe call whose variant props are dynamic, recipes always emit their base and default-variant CSS regardless, so this is a narrower warning about the variants specifically, not a build-blocking issue.

See also

  • Upgrading to v2 for the broader rewrite this belongs to.
  • Debugging for how to inspect issues in the current version.
  • Editor & IDE Tooling for where these diagnostics are expected to surface while you type, not just at build time.