"""Registry for crisis adapters (toy MVP).""" from __future__ import annotations from typing import Dict, Any, Optional class Adapter: name: str def __init__(self, name: str): self.name = name def schema(self) -> Dict[str, Any]: return {"adapter": self.name, "version": "0.1.0"} def adapt(self, data: Dict[str, Any]) -> Dict[str, Any]: # Placeholder; real adapters translate domain data into standardized signals return {"adapted": True, **data} class AdaptersRegistry: def __init__(self) -> None: self._registry: Dict[str, Adapter] = {} def register(self, adapter: Adapter) -> None: self._registry[adapter.name] = adapter def get(self, name: str) -> Optional[Adapter]: return self._registry.get(name) def list_adapters(self) -> Dict[str, Adapter]: return dict(self._registry) # Lightweight default registry with two toy adapters registered at import time registry = AdaptersRegistry() registry.register(Adapter("inventory_portal")) registry.register(Adapter("gis_dispatch"))