Canvas Components: - CustomExtractorNode.tsx: Node for custom Python extractors - CustomExtractorPanel.tsx: Configuration panel for custom extractors - ConnectionStatusIndicator.tsx: WebSocket status display - atomizer-spec.ts: TypeScript types for AtomizerSpec v2.0 Config: - migrator.py: Legacy config to AtomizerSpec v2.0 migration - Updated __init__.py exports for config and extractors MCP Tools: - spec.ts: MCP tools for spec manipulation - index.ts: Tool registration updates
73 lines
2.4 KiB
Python
73 lines
2.4 KiB
Python
"""
|
|
Configuration Management
|
|
========================
|
|
|
|
Configuration loading, validation, and building.
|
|
|
|
Modules:
|
|
- manager: ConfigManager for loading/saving configs
|
|
- builder: OptimizationConfigBuilder for creating configs
|
|
- setup_wizard: Interactive configuration setup
|
|
- capability_matcher: Match capabilities to requirements
|
|
- spec_models: AtomizerSpec v2.0 Pydantic models (unified configuration)
|
|
"""
|
|
|
|
# Lazy imports to avoid circular dependencies
|
|
def __getattr__(name):
|
|
if name == 'ConfigManager':
|
|
from .manager import ConfigManager
|
|
return ConfigManager
|
|
elif name == 'ConfigValidationError':
|
|
from .manager import ConfigValidationError
|
|
return ConfigValidationError
|
|
elif name == 'OptimizationConfigBuilder':
|
|
from .builder import OptimizationConfigBuilder
|
|
return OptimizationConfigBuilder
|
|
elif name == 'SetupWizard':
|
|
from .setup_wizard import SetupWizard
|
|
return SetupWizard
|
|
elif name == 'CapabilityMatcher':
|
|
from .capability_matcher import CapabilityMatcher
|
|
return CapabilityMatcher
|
|
elif name == 'TemplateLoader':
|
|
from .template_loader import TemplateLoader
|
|
return TemplateLoader
|
|
elif name == 'AtomizerSpec':
|
|
from .spec_models import AtomizerSpec
|
|
return AtomizerSpec
|
|
elif name == 'SpecValidator':
|
|
from .spec_validator import SpecValidator
|
|
return SpecValidator
|
|
elif name == 'SpecValidationError':
|
|
from .spec_validator import SpecValidationError
|
|
return SpecValidationError
|
|
elif name == 'validate_spec':
|
|
from .spec_validator import validate_spec
|
|
return validate_spec
|
|
elif name == 'SpecMigrator':
|
|
from .migrator import SpecMigrator
|
|
return SpecMigrator
|
|
elif name == 'migrate_config':
|
|
from .migrator import migrate_config
|
|
return migrate_config
|
|
elif name == 'migrate_config_file':
|
|
from .migrator import migrate_config_file
|
|
return migrate_config_file
|
|
raise AttributeError(f"module 'optimization_engine.config' has no attribute '{name}'")
|
|
|
|
__all__ = [
|
|
'ConfigManager',
|
|
'ConfigValidationError',
|
|
'OptimizationConfigBuilder',
|
|
'SetupWizard',
|
|
'CapabilityMatcher',
|
|
'TemplateLoader',
|
|
'AtomizerSpec',
|
|
'SpecValidator',
|
|
'SpecValidationError',
|
|
'validate_spec',
|
|
'SpecMigrator',
|
|
'migrate_config',
|
|
'migrate_config_file',
|
|
]
|