diff --git a/backend/src/temporal/manager.py b/backend/src/temporal/manager.py index 9aa075f..c6e3f77 100644 --- a/backend/src/temporal/manager.py +++ b/backend/src/temporal/manager.py @@ -186,13 +186,17 @@ class TemporalManager: # The workflow parameters are passed as individual positional args workflow_args = [target_id] + # Filter out metadata-only parameters (target_path, volume_mode) + # These are used by the system but NOT passed to the workflow + metadata_only_params = {"target_path", "volume_mode"} + # Add parameters in order based on workflow signature # For security_assessment: scanner_config, analyzer_config, reporter_config # For atheris_fuzzing: target_file, max_iterations, timeout_seconds - # Parameters come from metadata.yaml's default_parameters merged with user params if workflow_params: - # Add all parameter values as positional args - workflow_args.extend(workflow_params.values()) + # Only add parameters that are NOT metadata-only + filtered_params = {k: v for k, v in workflow_params.items() if k not in metadata_only_params} + workflow_args.extend(filtered_params.values()) # Determine task queue from workflow vertical vertical = workflow_info.metadata.get("vertical", "default")