cursus.core.config_fields.step_catalog_aware_categorizer

Step Catalog Aware Config Field Categorizer.

Enhanced categorizer with workspace and framework awareness.

This module provides a standalone categorizer that includes all base categorization functionality plus enhanced capabilities for workspace-specific field categorization and framework-specific field handling.

Workspace: Project-specific field categorization Framework: Framework-specific field handling Complete: All categorization rules and logic included

class StepCatalogAwareConfigFieldCategorizer(config_list, processing_step_config_base_class=None, project_id=None, step_catalog=None, workspace_root=None)[source]

Bases: object

Enhanced categorizer with workspace and framework awareness.

Combines all base categorization functionality with enhanced capabilities: - Workspace-specific field categorization - Framework-specific field handling - Step catalog integration - All existing categorization rules preserved

get_category_for_field(field_name, config=None)[source]

Get the category for a specific field, optionally in a specific config. (Merged from base class)

Parameters:
  • field_name (str) – Name of the field

  • config (Any | None) – Optional config instance

Returns:

Category for the field or None if field not found

Return type:

CategoryType

get_categorized_fields()[source]

Get the categorization result. (Merged from base class)

Returns:

Field categorization

Return type:

dict

get_field_sources()[source]

Get the field sources mapping (inverted index). (Merged from base class)

This creates an inverted index that maps each field name to the list of step names that contain that field.

Returns:

Mapping of field_name -> list of step names

Return type:

dict

print_categorization_stats()[source]

Print statistics about field categorization for the simplified structure. (Merged from base class)

get_enhanced_categorization_info()[source]

Get enhanced categorization information.

Returns:

Dictionary with enhanced categorization details

Return type:

Dict[str, Any]

categorize_with_enhanced_metadata()[source]

Perform categorization with enhanced metadata.

Returns:

Categorization result with enhanced metadata

Return type:

Dict[str, Any]

create_step_catalog_aware_categorizer(config_list, processing_step_config_base_class=None, project_id=None, step_catalog=None, workspace_root=None)[source]

Factory function to create a step catalog aware categorizer.

Parameters:
  • config_list (List[Any]) – List of configuration objects to categorize

  • processing_step_config_base_class (Type | None) – Optional base class for processing steps

  • project_id (str | None) – Optional project ID for workspace-specific categorization

  • step_catalog (Any | None) – Optional step catalog instance for enhanced processing

  • workspace_root (Path | None) – Optional workspace root for step catalog integration

Returns:

StepCatalogAwareConfigFieldCategorizer instance

Return type:

StepCatalogAwareConfigFieldCategorizer