refactor: 重构 Agent 模块为 AgentScope,删除旧版 CrewAI/LiteLLM 实现
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
from __future__ import annotations
|
||||
from datetime import datetime
|
||||
from typing import ClassVar, Literal
|
||||
from uuid import UUID
|
||||
|
||||
from pydantic import BaseModel, ConfigDict, Field
|
||||
|
||||
|
||||
class TodoCreate(BaseModel):
|
||||
model_config: ClassVar[ConfigDict] = ConfigDict(extra="forbid")
|
||||
|
||||
title: str = Field(..., min_length=1, max_length=255)
|
||||
description: str | None = Field(None, max_length=1000)
|
||||
due_at: datetime | None = None
|
||||
priority: int = Field(1, ge=1, le=4)
|
||||
schedule_item_ids: list[UUID] = Field(default_factory=list)
|
||||
|
||||
|
||||
class TodoUpdate(BaseModel):
|
||||
model_config: ClassVar[ConfigDict] = ConfigDict(extra="forbid")
|
||||
|
||||
title: str | None = Field(None, min_length=1, max_length=255)
|
||||
description: str | None = Field(None, max_length=1000)
|
||||
due_at: datetime | None = None
|
||||
priority: int | None = Field(None, ge=1, le=4)
|
||||
status: Literal["pending", "done", "canceled"] | None = None
|
||||
schedule_item_ids: list[UUID] | None = None
|
||||
|
||||
|
||||
class ScheduleItemBasic(BaseModel):
|
||||
model_config: ClassVar[ConfigDict] = ConfigDict(from_attributes=True)
|
||||
|
||||
id: UUID
|
||||
title: str
|
||||
start_at: datetime
|
||||
end_at: datetime | None
|
||||
|
||||
|
||||
class TodoResponse(BaseModel):
|
||||
model_config: ClassVar[ConfigDict] = ConfigDict(from_attributes=True)
|
||||
|
||||
id: UUID
|
||||
owner_id: UUID
|
||||
title: str
|
||||
description: str | None
|
||||
due_at: datetime | None
|
||||
priority: int
|
||||
status: str
|
||||
completed_at: datetime | None
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
schedule_items: list[ScheduleItemBasic] = Field(default_factory=list)
|
||||
|
||||
|
||||
class TodoComplete(BaseModel):
|
||||
model_config: ClassVar[ConfigDict] = ConfigDict(extra="forbid")
|
||||
|
||||
pass
|
||||
Reference in New Issue
Block a user