from typing import Protocol class SourcePort(Protocol): def read(self) -> tuple[bool, object]: """(ok, frame). ok=False면 프레임 없음.""" ... class PosePort(Protocol): def infer(self, frame) -> list: # list[Person] ...