"""Native host-team dispatch planning."""
from __future__ import annotations

from ...domain.worker_exec import WorkerWriteCapability
from ...ports.worker_dispatch import WorkerDispatchPlan, WorkerDispatchRequest


class NativeTeamDispatchPort:
    def __init__(
        self,
        *,
        worker_write_capability: WorkerWriteCapability = WorkerWriteCapability(
            "none"
        ),
    ) -> None:
        self._worker_write_capability = worker_write_capability

    def build_plan(self, request: WorkerDispatchRequest) -> WorkerDispatchPlan:
        return WorkerDispatchPlan(
            mode="native-team",
            request=request,
            dispatch_mode="team",
        )

    def worker_write_capability(self) -> WorkerWriteCapability:
        return self._worker_write_capability
