"""ContextPart — referencia a un contexto externo en un mensaje multipart."""

from dataclasses import dataclass, field


@dataclass
class ContextPart:
    """Referencia a un contexto externo (memoria, recurso o skill) en un mensaje multipart.

    Attributes:
        uri:          URI que identifica el contexto referenciado.
        context_type: Tipo de contexto: "memory" | "resource" | "skill".
        abstract:     Resumen legible del contenido del contexto.
        type:         Discriminador literal, siempre "context".
    """

    uri: str = ""
    context_type: str = "memory"
    abstract: str = ""
    type: str = field(default="context", init=True)
