cursus.core.compiler.validation¶
Validation and preview classes for the Pipeline API.
This module provides classes for validating DAG-config compatibility and previewing resolution results before pipeline generation.
- class ValidationResult(*, is_valid, missing_configs=<factory>, unresolvable_builders=<factory>, config_errors=<factory>, dependency_issues=<factory>, warnings=<factory>)[source]¶
Bases:
BaseModelResult of DAG-config compatibility validation.
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class ResolutionPreview(*, node_config_map, config_builder_map, resolution_confidence, ambiguous_resolutions=<factory>, recommendations=<factory>)[source]¶
Bases:
BaseModelPreview of how DAG nodes will be resolved.
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class ConversionReport(*, pipeline_name, steps, resolution_details, avg_confidence, warnings=<factory>, metadata=<factory>)[source]¶
Bases:
BaseModelReport generated after successful pipeline conversion.
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class ValidationEngine[source]¶
Bases:
objectEngine for validating DAG-config compatibility.
- validate_dag_compatibility(dag_nodes, available_configs, config_map, builder_registry, metadata=None)[source]¶
Validate DAG-config compatibility.
- Parameters:
available_configs (Dict[str, Any]) – Available configuration instances
config_map (Dict[str, Any]) – Resolved node-to-config mapping
metadata (Dict[str, Any] | None) – Optional pipeline metadata; its
config_typesmap (node -> config class) records USER-AUTHORED node→config bindings. The node-vs-config cross-check honors it, so a deliberately off-convention node name explicitly mapped there is not flagged as a misresolution.
- Returns:
ValidationResult with detailed validation information
- Return type: