mirror of
https://github.com/johndoe6345789/AutoMetabuilder.git
synced 2026-04-24 13:54:59 +00:00
Reorganize backend/autometabuilder: create engine, loaders, services, and utils subdirectories
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
This commit is contained in:
@@ -5,7 +5,7 @@ import json
|
||||
import os
|
||||
from pathlib import Path
|
||||
|
||||
from .metadata_loader import load_metadata
|
||||
from .loaders.metadata_loader import load_metadata
|
||||
|
||||
|
||||
def _load_messages_path(path: Path) -> dict:
|
||||
|
||||
@@ -1,14 +1,12 @@
|
||||
"""Application runner."""
|
||||
import logging
|
||||
import os
|
||||
from .cli_args import parse_args
|
||||
from .env_loader import load_env
|
||||
from .utils import parse_args
|
||||
from .loaders import load_env
|
||||
from .logging_config import configure_logging
|
||||
from .metadata_loader import load_metadata
|
||||
from .loaders import load_metadata
|
||||
from .web.server import start_web_ui
|
||||
from .workflow_config_loader import load_workflow_config
|
||||
from .workflow_context_builder import build_workflow_context
|
||||
from .workflow_engine_builder import build_workflow_engine
|
||||
from .engine import load_workflow_config, build_workflow_context, build_workflow_engine
|
||||
|
||||
|
||||
def run_app() -> None:
|
||||
|
||||
18
backend/autometabuilder/engine/__init__.py
Normal file
18
backend/autometabuilder/engine/__init__.py
Normal file
@@ -0,0 +1,18 @@
|
||||
"""
|
||||
Workflow engine initialization and building.
|
||||
|
||||
This module contains the workflow engine setup components:
|
||||
- workflow_config_loader: Load workflow configuration JSON
|
||||
- workflow_context_builder: Build workflow runtime context
|
||||
- workflow_engine_builder: Assemble workflow engine with dependencies
|
||||
"""
|
||||
|
||||
from .workflow_config_loader import load_workflow_config
|
||||
from .workflow_context_builder import build_workflow_context
|
||||
from .workflow_engine_builder import build_workflow_engine
|
||||
|
||||
__all__ = [
|
||||
"load_workflow_config",
|
||||
"build_workflow_context",
|
||||
"build_workflow_engine",
|
||||
]
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Build workflow runtime context."""
|
||||
from .model_resolver import resolve_model_name
|
||||
from ..utils.model_resolver import resolve_model_name
|
||||
|
||||
|
||||
def build_workflow_context(parts: dict) -> dict:
|
||||
@@ -1,11 +1,11 @@
|
||||
"""Build workflow engine with dependencies."""
|
||||
from .workflow.engine import WorkflowEngine
|
||||
from .workflow.input_resolver import InputResolver
|
||||
from .workflow.loop_executor import LoopExecutor
|
||||
from .workflow.node_executor import NodeExecutor
|
||||
from .workflow.plugin_registry import PluginRegistry, load_plugin_map
|
||||
from .workflow.runtime import WorkflowRuntime
|
||||
from .workflow.tool_runner import ToolRunner
|
||||
from ..workflow.engine import WorkflowEngine
|
||||
from ..workflow.input_resolver import InputResolver
|
||||
from ..workflow.loop_executor import LoopExecutor
|
||||
from ..workflow.node_executor import NodeExecutor
|
||||
from ..workflow.plugin_registry import PluginRegistry, load_plugin_map
|
||||
from ..workflow.runtime import WorkflowRuntime
|
||||
from ..workflow.tool_runner import ToolRunner
|
||||
|
||||
|
||||
def build_workflow_engine(workflow_config: dict, context: dict, logger):
|
||||
33
backend/autometabuilder/loaders/__init__.py
Normal file
33
backend/autometabuilder/loaders/__init__.py
Normal file
@@ -0,0 +1,33 @@
|
||||
"""
|
||||
Loaders module for AutoMetabuilder.
|
||||
|
||||
This module contains various loader utilities:
|
||||
- callable_loader: Load callables by dotted path
|
||||
- env_loader: Load environment variables from .env
|
||||
- metadata_loader: Load metadata.json
|
||||
- plugin_loader: Load custom tools from plugins directory
|
||||
- prompt_loader: Load prompt configuration
|
||||
- tool_policy_loader: Load tool policies from JSON
|
||||
- tool_registry_loader: Load tool registry entries
|
||||
- tools_loader: Load tool specs from JSON
|
||||
"""
|
||||
|
||||
from .callable_loader import load_callable
|
||||
from .env_loader import load_env
|
||||
from .metadata_loader import load_metadata
|
||||
from .plugin_loader import load_plugins
|
||||
from .prompt_loader import load_prompt_yaml
|
||||
from .tool_policy_loader import load_tool_policies
|
||||
from .tool_registry_loader import load_tool_registry
|
||||
from .tools_loader import load_tools
|
||||
|
||||
__all__ = [
|
||||
"load_callable",
|
||||
"load_env",
|
||||
"load_metadata",
|
||||
"load_plugins",
|
||||
"load_prompt_yaml",
|
||||
"load_tool_policies",
|
||||
"load_tool_registry",
|
||||
"load_tools",
|
||||
]
|
||||
22
backend/autometabuilder/services/__init__.py
Normal file
22
backend/autometabuilder/services/__init__.py
Normal file
@@ -0,0 +1,22 @@
|
||||
"""
|
||||
Services module for AutoMetabuilder.
|
||||
|
||||
This module contains service integrations:
|
||||
- github_integration: GitHub API integration
|
||||
- github_service: GitHub service builder
|
||||
- openai_client: OpenAI client helpers
|
||||
- openai_factory: OpenAI client factory
|
||||
"""
|
||||
|
||||
from .github_integration import GitHubIntegration, get_repo_name_from_env
|
||||
from .github_service import create_github_integration
|
||||
from .openai_client import get_completion
|
||||
from .openai_factory import create_openai_client
|
||||
|
||||
__all__ = [
|
||||
"GitHubIntegration",
|
||||
"get_repo_name_from_env",
|
||||
"create_github_integration",
|
||||
"get_completion",
|
||||
"create_openai_client",
|
||||
]
|
||||
@@ -7,7 +7,7 @@ from github.Issue import Issue
|
||||
from github.PullRequest import PullRequest
|
||||
from tenacity import retry, stop_after_attempt, wait_exponential
|
||||
|
||||
from . import load_messages
|
||||
from .. import load_messages
|
||||
|
||||
|
||||
class GitHubIntegration:
|
||||
@@ -1,6 +1,6 @@
|
||||
"""Run a task inside Docker."""
|
||||
import os
|
||||
from ..docker_utils import run_command_in_docker
|
||||
from ..utils.docker_utils import run_command_in_docker
|
||||
|
||||
|
||||
def run_docker_task(image: str, command: str, workdir: str = "/workspace") -> str:
|
||||
|
||||
28
backend/autometabuilder/utils/__init__.py
Normal file
28
backend/autometabuilder/utils/__init__.py
Normal file
@@ -0,0 +1,28 @@
|
||||
"""
|
||||
Utilities module for AutoMetabuilder.
|
||||
|
||||
This module contains various utility functions:
|
||||
- cli_args: CLI argument parsing
|
||||
- context_loader: Load SDLC context from repo and GitHub
|
||||
- docker_utils: Docker command utilities
|
||||
- model_resolver: Resolve LLM model names
|
||||
- roadmap_utils: Roadmap file utilities
|
||||
- tool_map_builder: Build tool map from registry
|
||||
"""
|
||||
|
||||
from .cli_args import parse_args
|
||||
from .context_loader import get_sdlc_context
|
||||
from .docker_utils import run_command_in_docker
|
||||
from .model_resolver import resolve_model_name
|
||||
from .roadmap_utils import is_mvp_reached, update_roadmap
|
||||
from .tool_map_builder import build_tool_map
|
||||
|
||||
__all__ = [
|
||||
"parse_args",
|
||||
"get_sdlc_context",
|
||||
"run_command_in_docker",
|
||||
"resolve_model_name",
|
||||
"is_mvp_reached",
|
||||
"update_roadmap",
|
||||
"build_tool_map",
|
||||
]
|
||||
@@ -1,7 +1,7 @@
|
||||
"""Load SDLC context from repo and GitHub."""
|
||||
import os
|
||||
import logging
|
||||
from .github_integration import GitHubIntegration
|
||||
from ..services.github_integration import GitHubIntegration
|
||||
|
||||
logger = logging.getLogger("autometabuilder")
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Build tool map from registry entries."""
|
||||
from .callable_loader import load_callable
|
||||
from ..loaders.callable_loader import load_callable
|
||||
|
||||
|
||||
def build_tool_map(gh, registry_entries: list) -> dict:
|
||||
@@ -3,7 +3,7 @@ from __future__ import annotations
|
||||
import json
|
||||
from typing import Any
|
||||
|
||||
from autometabuilder.metadata_loader import load_metadata as load_metadata_full
|
||||
from autometabuilder.loaders.metadata_loader import load_metadata as load_metadata_full
|
||||
from .json_utils import read_json
|
||||
from .paths import PACKAGE_ROOT
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Load workflow plugins by dotted path."""
|
||||
from ..callable_loader import load_callable
|
||||
from ..loaders.callable_loader import load_callable
|
||||
|
||||
|
||||
def load_plugin_callable(path: str):
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"""Workflow plugin: build tool map."""
|
||||
from ....tool_map_builder import build_tool_map
|
||||
from ....tool_registry_loader import load_tool_registry
|
||||
from ....utils.tool_map_builder import build_tool_map
|
||||
from ....loaders.tool_registry_loader import load_tool_registry
|
||||
|
||||
|
||||
def run(runtime, _inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: create GitHub integration."""
|
||||
from ....github_service import create_github_integration
|
||||
from ....services.github_service import create_github_integration
|
||||
|
||||
|
||||
def run(runtime, _inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: create OpenAI client."""
|
||||
from ....openai_factory import create_openai_client
|
||||
from ....services.openai_factory import create_openai_client
|
||||
|
||||
|
||||
def run(runtime, _inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: load environment variables."""
|
||||
from ....env_loader import load_env
|
||||
from ....loaders.env_loader import load_env
|
||||
|
||||
|
||||
def run(_runtime, _inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: load metadata."""
|
||||
from ....metadata_loader import load_metadata
|
||||
from ....loaders.metadata_loader import load_metadata
|
||||
|
||||
|
||||
def run(runtime, _inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: load and register plugins."""
|
||||
from ....plugin_loader import load_plugins
|
||||
from ....loaders.plugin_loader import load_plugins
|
||||
|
||||
|
||||
def run(runtime, _inputs):
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"""Workflow plugin: load prompt configuration."""
|
||||
from ....prompt_loader import load_prompt_yaml
|
||||
from ....model_resolver import resolve_model_name
|
||||
from ....loaders.prompt_loader import load_prompt_yaml
|
||||
from ....utils.model_resolver import resolve_model_name
|
||||
|
||||
|
||||
def run(runtime, _inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: load tool policies."""
|
||||
from ....tool_policy_loader import load_tool_policies
|
||||
from ....loaders.tool_policy_loader import load_tool_policies
|
||||
|
||||
|
||||
def run(runtime, _inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: load tool registry."""
|
||||
from ....tool_registry_loader import load_tool_registry
|
||||
from ....loaders.tool_registry_loader import load_tool_registry
|
||||
|
||||
|
||||
def run(runtime, _inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: load tools."""
|
||||
from ....tools_loader import load_tools
|
||||
from ....loaders.tools_loader import load_tools
|
||||
|
||||
|
||||
def run(runtime, _inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: parse CLI arguments."""
|
||||
from ....cli_args import parse_args
|
||||
from ....utils.cli_args import parse_args
|
||||
|
||||
|
||||
def run(runtime, _inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: AI request."""
|
||||
from ....openai_client import get_completion
|
||||
from ....services.openai_client import get_completion
|
||||
|
||||
|
||||
def run(runtime, inputs):
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"""Workflow plugin: append tool results."""
|
||||
from ....integrations.notifications import notify_all
|
||||
from ....roadmap_utils import is_mvp_reached
|
||||
from ....utils.roadmap_utils import is_mvp_reached
|
||||
|
||||
|
||||
def run(runtime, inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: load SDLC context."""
|
||||
from ....context_loader import get_sdlc_context
|
||||
from ....utils.context_loader import get_sdlc_context
|
||||
|
||||
|
||||
def run(runtime, _inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: run command in Docker container."""
|
||||
from ....docker_utils import run_command_in_docker
|
||||
from ....utils.docker_utils import run_command_in_docker
|
||||
|
||||
|
||||
def run(_runtime, inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: check if MVP is reached."""
|
||||
from ....roadmap_utils import is_mvp_reached
|
||||
from ....utils.roadmap_utils import is_mvp_reached
|
||||
|
||||
|
||||
def run(_runtime, _inputs):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Workflow plugin: update roadmap file."""
|
||||
from ....roadmap_utils import update_roadmap
|
||||
from ....utils.roadmap_utils import update_roadmap
|
||||
|
||||
|
||||
def run(_runtime, inputs):
|
||||
|
||||
Reference in New Issue
Block a user