Summary

Add a Workflow Execution Service that provides a programmatic API for executing FlowDrop workflows. This service is used internally by the Workflow Executor node but is also available for custom module development.

Business Value

  • Enables custom modules to trigger workflows programmatically
  • Provides a clean API for workflow orchestration
  • Supports integration with external systems that need to invoke workflows
  • Centralizes workflow execution logic for consistency

Service Methods

  • execute(): Execute a workflow with specified mode and input data
  • getResults(): Get results for an existing session with optional wait
  • isComplete(): Check if a workflow session has completed
  • getStatus(): Get the current status of a workflow session

Execution Modes

  • MODE_JOB: Create session, trigger execution, wait for completion
  • MODE_JOB_ASYNC: Create session, trigger execution, return immediately
  • MODE_JOB_FIRE_FORGET: Queue for later execution (truly async)

Safety Features

  • Maximum execution depth of 5 levels to prevent infinite recursion
  • Circular workflow reference detection using workflow chain tracking
  • Parent context propagation for debugging and audit trails

Service ID

flowdrop_workflow_executor.service

Comments

joevagyok created an issue. See original summary.

gxleano’s picture

I have contributed (not only by code, but discussion, presentation, testing or anything related).

d34dman’s picture

Status: Active » Fixed

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.