from __future__ import annotations from abc import ABC, abstractmethod from dataclasses import dataclass, field from typing import Any @dataclass(slots=True) class Task: name: str payload: dict[str, Any] metadata: dict[str, Any] = field(default_factory=dict) class TaskHandler(ABC): @abstractmethod def handle(self, task: Task) -> None: """Execute domain logic for a task."""