Files
Atomizer/optimization_engine/config/__init__.py
Anto01 27e78d3d56 feat(canvas): Custom extractor components, migrator, and MCP spec tools
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
2026-01-20 13:11:42 -05:00

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',
]