```python:inference/core/workflows/core_steps/trackers/_base.py
from typing import List

from inference.core.workflows.execution_engine.entities.base import \
    OutputDefinition
from inference.core.workflows.execution_engine.entities.types import \
    OBJECT_DETECTION_PREDICTION_KIND

OUTPUT_KEY: str = "tracked_detections"



_cached_outputs = None


def tracker_describe_outputs() -> List[OutputDefinition]:
    """Output definitions shared by all tracker blocks."""
    global _cached_outputs
    if _cached_outputs is None:
        _cached_outputs = [
            OutputDefinition(name=OUTPUT_KEY, kind=[OBJECT_DETECTION_PREDICTION_KIND]),
            OutputDefinition(name="new_instances", kind=[OBJECT_DETECTION_PREDICTION_KIND]),
            OutputDefinition(
                name="already_seen_instances",
                kind=[OBJECT_DETECTION_PREDICTION_KIND],
            ),
        ]
    return _cached_outputs
```