import uuid from datetime import datetime from pydantic import BaseModel, ConfigDict class WorkstreamDependencyCreate(BaseModel): to_workstream_id: uuid.UUID | None = None to_task_id: uuid.UUID | None = None relationship_type: str = "blocks" description: str | None = None class WorkstreamDependencyRead(BaseModel): model_config = ConfigDict(from_attributes=True) id: uuid.UUID from_workstream_id: uuid.UUID to_workstream_id: uuid.UUID | None = None to_task_id: uuid.UUID | None = None relationship_type: str description: str | None = None created_at: datetime updated_at: datetime class WorkstreamDepStub(BaseModel): """Minimal projection of the other end of a dependency edge.""" dep_id: uuid.UUID target_type: str = "workstream" relationship_type: str = "blocks" workstream_id: uuid.UUID | None = None workstream_slug: str | None = None workstream_title: str | None = None task_id: uuid.UUID | None = None task_title: str | None = None description: str | None = None