from pydantic import BaseModel, Field
class KnowledgeEntryCreate(BaseModel):
title: str = Field(min_length=1, max_length=200)
content: str = Field(min_length=1)
category: str = "general"
tags: list[str] = Field(default_factory=list)
summary: str = ""
class KnowledgeEntryUpdate(BaseModel):
title: str | None = Field(default=None, min_length=1, max_length=200)
content: str | None = None
category: str | None = None
tags: list[str] | None = None
summary: str | None = None
class KnowledgeEntryItem(BaseModel):
id: str
title: str
category: str
tags: list[str]
summary: str
content: str = ""
created_by: str = ""
created_at: str
updated_at: str
class KnowledgeListResponse(BaseModel):
items: list[KnowledgeEntryItem]