diff --git a/harness/es.py b/harness/es.py index 67feef5..1cd5cb5 100644 --- a/harness/es.py +++ b/harness/es.py @@ -150,6 +150,10 @@ def _apply_event(model: dict, ev: dict): "id": aid, "title": data.get("title", ""), "size": data.get("size", "M"), "status": "ready", "level": None, "session_id": None, "result_ref": None, "created": ev["timestamp"], + # details — постановка задачи; исполнитель видит её в контексте + # тика (build_context). Без этого часовой уровень выполнял задачу + # по одному заголовку и терял принципы/нюансы постановки. + "details": (data.get("details") or "")[:2000], } elif etype == "TaskClaimed": t = model["tasks"].get(aid) diff --git a/harness/scheduler.py b/harness/scheduler.py index c6c6ff1..bb521a9 100644 --- a/harness/scheduler.py +++ b/harness/scheduler.py @@ -137,7 +137,9 @@ def build_context(level_cfg, model: dict, task=None): parts.append("ДОСКА ЗАДАЧ:\n" + "\n".join(lines)) if task: - parts.append(f"ТЕКУЩАЯ ЗАДАЧА: {task['id']}: {task['title']}\nВыполни её и выдай результат.") + parts.append(f"ТЕКУЩАЯ ЗАДАЧА: {task['id']}: {task['title']}\n" + + (f"ПОСТАНОВКА: {task['details']}\n" if task.get("details") else "") + + "Выполни её и выдай результат.") return "\n\n".join(parts)