cursus.step_catalog.config_discovery

Configuration class auto-discovery for the unified step catalog system.

This module implements AST-based configuration class discovery from both core and workspace directories, integrating with the existing ConfigClassStore. Extended to include hyperparameter class discovery.

class ConfigAutoDiscovery(package_root, workspace_dirs)[source]

Bases: object

Simple configuration class auto-discovery.

discover_config_classes(project_id=None)[source]

Auto-discover configuration classes from package and workspace directories.

Parameters:

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

Returns:

Dictionary mapping class names to class types

Return type:

Dict[str, Type]

discover_hyperparameter_classes(project_id=None)[source]

Auto-discover hyperparameter classes from package and workspace directories.

Parameters:

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

Returns:

Dictionary mapping class names to class types

Return type:

Dict[str, Type]

build_complete_config_classes(project_id=None)[source]

Build complete mapping using pure auto-discovery. Includes both config and hyperparameter classes for comprehensive discovery.

ConfigClassStore was removed as part of the unified step catalog refactoring. This method now uses pure AST-based auto-discovery which is deployment-agnostic and works in all environments (installed, submodule, Lambda, Docker, etc.).

Parameters:

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

Returns:

Complete dictionary of config and hyperparameter classes (auto-discovered)

Return type:

Dict[str, Type]