From ab8b35880378f383e618c8a4b8259699d3cbeb44 Mon Sep 17 00:00:00 2001 From: Songbird Date: Mon, 27 Oct 2025 12:17:46 +0100 Subject: [PATCH] fix: add default values to llm_analysis workflow parameters Resolves validation error where agent_url was None when not explicitly provided. The TemporalManager applies defaults from metadata.yaml, not from module input schemas, so all parameters need defaults in the workflow metadata. Changes: - Add default agent_url, llm_model (gpt-5-mini), llm_provider (openai) - Expand file_patterns to 45 comprehensive patterns covering code, configs, secrets, and Docker files - Increase default limits: max_files (10), max_file_size (100KB), timeout (90s) --- .../workflows/llm_analysis/metadata.yaml | 54 ++++++++++++++++++- 1 file changed, 53 insertions(+), 1 deletion(-) diff --git a/backend/toolbox/workflows/llm_analysis/metadata.yaml b/backend/toolbox/workflows/llm_analysis/metadata.yaml index e6e9872..2631b59 100644 --- a/backend/toolbox/workflows/llm_analysis/metadata.yaml +++ b/backend/toolbox/workflows/llm_analysis/metadata.yaml @@ -19,26 +19,78 @@ parameters: agent_url: type: string description: "A2A agent endpoint URL" + default: "http://fuzzforge-task-agent:8000/a2a/litellm_agent" llm_model: type: string description: "LLM model to use (e.g., gpt-4o-mini, claude-3-5-sonnet)" + default: "gpt-5-mini" llm_provider: type: string description: "LLM provider (openai, anthropic, etc.)" + default: "openai" file_patterns: type: array items: type: string - description: "File patterns to analyze (e.g., ['*.py', '*.js'])" + default: + - "*.py" + - "*.js" + - "*.ts" + - "*.jsx" + - "*.tsx" + - "*.java" + - "*.go" + - "*.rs" + - "*.c" + - "*.cpp" + - "*.h" + - "*.hpp" + - "*.cs" + - "*.php" + - "*.rb" + - "*.swift" + - "*.kt" + - "*.scala" + - "*.env" + - "*.yaml" + - "*.yml" + - "*.json" + - "*.xml" + - "*.ini" + - "*.sql" + - "*.properties" + - "*.sh" + - "*.bat" + - "*.ps1" + - "*.config" + - "*.conf" + - "*.toml" + - "*id_rsa*" + - "*id_dsa*" + - "*id_ecdsa*" + - "*id_ed25519*" + - "*.pem" + - "*.key" + - "*.pub" + - "*.txt" + - "*.md" + - "Dockerfile" + - "docker-compose.yml" + - ".gitignore" + - ".dockerignore" + description: "File patterns to analyze for security issues and secrets" max_files: type: integer description: "Maximum number of files to analyze" + default: 10 max_file_size: type: integer description: "Maximum file size in bytes" + default: 100000 timeout: type: integer description: "Timeout per file in seconds" + default: 90 output_schema: type: object