From 5133a46216e565ef781210468d1a1c5b739d2304 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 10 Jan 2026 16:48:14 +0000 Subject: [PATCH] Fix remaining imports from utils in engine and tools modules Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com> --- .../engine/workflow_context_builder.py | 9 ++++- .../autometabuilder/tools/run_docker_task.py | 38 ++++++++++++++++++- 2 files changed, 45 insertions(+), 2 deletions(-) diff --git a/backend/autometabuilder/engine/workflow_context_builder.py b/backend/autometabuilder/engine/workflow_context_builder.py index be52570..4abbb08 100644 --- a/backend/autometabuilder/engine/workflow_context_builder.py +++ b/backend/autometabuilder/engine/workflow_context_builder.py @@ -1,5 +1,12 @@ """Build workflow runtime context.""" -from ..utils.model_resolver import resolve_model_name +import os + +DEFAULT_MODEL = "openai/gpt-4o" + + +def resolve_model_name(prompt: dict) -> str: + """Resolve model name from env or prompt.""" + return os.environ.get("LLM_MODEL", prompt.get("model", DEFAULT_MODEL)) def build_workflow_context(parts: dict) -> dict: diff --git a/backend/autometabuilder/tools/run_docker_task.py b/backend/autometabuilder/tools/run_docker_task.py index e003262..90ce7b2 100644 --- a/backend/autometabuilder/tools/run_docker_task.py +++ b/backend/autometabuilder/tools/run_docker_task.py @@ -1,6 +1,42 @@ """Run a task inside Docker.""" +import subprocess import os -from ..utils.docker_utils import run_command_in_docker +import logging + +logger = logging.getLogger("autometabuilder.docker") + + +def run_command_in_docker(image: str, command: str, volumes: dict = None, workdir: str = None): + """ + Run a command inside a Docker container. + + :param image: Docker image to use. + :param command: Command to execute. + :param volumes: Dictionary of volume mappings {host_path: container_path}. + :param workdir: Working directory inside the container. + :return: Standard output of the command. + """ + docker_command = ["docker", "run", "--rm"] + + if volumes: + for host_path, container_path in volumes.items(): + docker_command.extend(["-v", f"{os.path.abspath(host_path)}:{container_path}"]) + + if workdir: + docker_command.extend(["-w", workdir]) + + docker_command.append(image) + docker_command.extend(["sh", "-c", command]) + + logger.info(f"Executing in Docker ({image}): {command}") + result = subprocess.run(docker_command, capture_output=True, text=True, check=False) + + output = result.stdout + if result.stderr: + output += "\n" + result.stderr + + logger.info(output) + return output def run_docker_task(image: str, command: str, workdir: str = "/workspace") -> str: