Вынес агентов в отдельные файлы

This commit is contained in:
ki.sagidullin
2026-04-12 08:51:33 +05:00
parent f110f52e91
commit 324097988b
9 changed files with 203 additions and 100 deletions

View File

@@ -15,7 +15,7 @@ class TaskStatus(str, Enum):
class ReviewComment(BaseModel):
line: Optional[int] = None
file: Optional[str] = None
severity: Literal["critical", "major", "minor", "suggestion"] = "major"
severity: Literal["critical", "major", "minor", "suggestion", "warning", "info"] = "major"
text: str
class ReviewResult(BaseModel):
@@ -28,6 +28,17 @@ class CodeSolution(BaseModel):
description: str
tests: Dict[str, str] = Field(default_factory=dict) # test_filename -> content
class IterationRecord(BaseModel):
"""Запись одной итерации"""
iteration: int
timestamp: str
agent: Literal["developer", "reviewer"]
action: str # "start", "complete", "error"
input_summary: Optional[str] = None
output_summary: Optional[str] = None
details: Dict[str, Any] = Field(default_factory=dict)
error: Optional[str] = None
class Task(BaseModel):
id: str
requirement: str
@@ -35,4 +46,5 @@ class Task(BaseModel):
iteration: int = 0
solution: Optional[CodeSolution] = None
last_review: Optional[ReviewResult] = None
error_log: List[str] = Field(default_factory=list)
error_log: List[str] = Field(default_factory=list)
history: List[IterationRecord] = Field(default_factory=list) # <-- новая история