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

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

21
main.py
View File

@@ -15,7 +15,7 @@ def load_requirement_from_file(filepath: str) -> str:
return f.read()
def save_report(task, output_file: Optional[str] = None):
"""Сохраняет детальный отчет о выполнении"""
"""Сохраняет детальный отчет с историей всех итераций"""
report = {
"task_id": task.id,
"timestamp": datetime.now().isoformat(),
@@ -24,9 +24,23 @@ def save_report(task, output_file: Optional[str] = None):
"iterations": task.iteration,
"final_review": None,
"error_log": task.error_log,
"files_generated": []
"files_generated": [],
"history": [] # <-- добавляем историю
}
# Добавляем историю итераций
for record in task.history:
report["history"].append({
"iteration": record.iteration,
"timestamp": record.timestamp,
"agent": record.agent,
"action": record.action,
"input_summary": record.input_summary,
"output_summary": record.output_summary,
"details": record.details,
"error": record.error
})
if task.last_review:
report["final_review"] = {
"status": task.last_review.status,
@@ -48,14 +62,13 @@ def save_report(task, output_file: Optional[str] = None):
report["tests_generated"] = list(task.solution.tests.keys())
report["description"] = task.solution.description
# Сохраняем в файл
if not output_file:
output_file = f"report_{task.id}.json"
with open(output_file, 'w', encoding='utf-8') as f:
json.dump(report, f, indent=2, ensure_ascii=False)
print(f"\n📄 Отчет сохранен: {output_file}")
print(f"\n📄 Report saved: {output_file}")
return report
def interactive_mode():