feat(tags): add tag management interfaces and update related schemas
This commit is contained in:
@@ -10,13 +10,13 @@ from pydantic import field_validator, model_validator
|
||||
from sqlmodel import Field, SQLModel
|
||||
|
||||
from app.schemas.common import NonEmptyStr
|
||||
from app.schemas.task_tags import TaskTagRef
|
||||
from app.schemas.tags import TagRef
|
||||
|
||||
TaskStatus = Literal["inbox", "in_progress", "review", "done"]
|
||||
STATUS_REQUIRED_ERROR = "status is required"
|
||||
# Keep these symbols as runtime globals so Pydantic can resolve
|
||||
# deferred annotations reliably.
|
||||
RUNTIME_ANNOTATION_TYPES = (datetime, UUID, NonEmptyStr, TaskTagRef)
|
||||
RUNTIME_ANNOTATION_TYPES = (datetime, UUID, NonEmptyStr, TagRef)
|
||||
|
||||
|
||||
class TaskBase(SQLModel):
|
||||
@@ -80,7 +80,7 @@ class TaskRead(TaskBase):
|
||||
updated_at: datetime
|
||||
blocked_by_task_ids: list[UUID] = Field(default_factory=list)
|
||||
is_blocked: bool = False
|
||||
tags: list[TaskTagRef] = Field(default_factory=list)
|
||||
tags: list[TagRef] = Field(default_factory=list)
|
||||
|
||||
|
||||
class TaskCommentCreate(SQLModel):
|
||||
|
||||
Reference in New Issue
Block a user