"""Send transport interface. Pluggable Transport interface for the outbox send operation. Default EchoTransport records the payload and marks as sent. No real email in POC. """ from __future__ import annotations from datetime import datetime, timezone from typing import Any, Protocol class Transport(Protocol): def send(self, payload: dict[str, Any]) -> dict[str, Any]: """Send a payload. Returns a result dict with at least 'success' bool.""" ... class EchoTransport: """Default transport: records payload, returns success. No real email is sent. Used for POC. """ def __init__(self) -> None: self.sent: list[dict[str, Any]] = [] def send(self, payload: dict[str, Any]) -> dict[str, Any]: self.sent.append(payload) return { "success": True, "sent_at": datetime.now(timezone.utc).isoformat(), "echo": payload, } # Singleton instance _default_transport: Transport | None = None def get_transport() -> Transport: global _default_transport if _default_transport is None: _default_transport = EchoTransport() return _default_transport def set_transport(t: Transport) -> None: global _default_transport _default_transport = t