Class: Agentic::PlanOrchestratorConfig

Inherits:
Object
  • Object
show all
Defined in:
lib/agentic/plan_orchestrator_config.rb

Overview

Configuration object for the PlanOrchestrator

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(concurrency_limit: 10, lifecycle_hooks: {}, continue_on_failure: true, retry_config: nil, async: true) ⇒ PlanOrchestratorConfig

Initializes a new plan orchestrator configuration

Parameters:

  • concurrency_limit (Integer) (defaults to: 10)

    Maximum number of concurrent tasks

  • lifecycle_hooks (Hash) (defaults to: {})

    Lifecycle hooks for the orchestrator

  • continue_on_failure (Boolean) (defaults to: true)

    Whether to continue execution after a task failure

  • retry_config (RetryConfig, nil) (defaults to: nil)

    Retry configuration for tasks

  • async (Boolean) (defaults to: true)

    Whether to execute tasks asynchronously



27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/agentic/plan_orchestrator_config.rb', line 27

def initialize(
  concurrency_limit: 10,
  lifecycle_hooks: {},
  continue_on_failure: true,
  retry_config: nil,
  async: true
)
  @concurrency_limit = concurrency_limit
  @lifecycle_hooks = lifecycle_hooks
  @continue_on_failure = continue_on_failure
  @retry_config = retry_config || RetryConfig.new
  @async = async
end

Instance Attribute Details

#asyncBoolean

Returns Whether to execute tasks asynchronously.

Returns:

  • (Boolean)

    Whether to execute tasks asynchronously



19
20
21
# File 'lib/agentic/plan_orchestrator_config.rb', line 19

def async
  @async
end

#concurrency_limitInteger

Returns Maximum number of concurrent tasks.

Returns:

  • (Integer)

    Maximum number of concurrent tasks



7
8
9
# File 'lib/agentic/plan_orchestrator_config.rb', line 7

def concurrency_limit
  @concurrency_limit
end

#continue_on_failureBoolean

Returns Whether to continue execution after a task failure.

Returns:

  • (Boolean)

    Whether to continue execution after a task failure



13
14
15
# File 'lib/agentic/plan_orchestrator_config.rb', line 13

def continue_on_failure
  @continue_on_failure
end

#lifecycle_hooksHash

Returns Lifecycle hooks for the orchestrator.

Returns:

  • (Hash)

    Lifecycle hooks for the orchestrator



10
11
12
# File 'lib/agentic/plan_orchestrator_config.rb', line 10

def lifecycle_hooks
  @lifecycle_hooks
end

#retry_configRetryConfig

Returns Retry configuration for tasks.

Returns:



16
17
18
# File 'lib/agentic/plan_orchestrator_config.rb', line 16

def retry_config
  @retry_config
end

Instance Method Details

#to_hHash

Returns a hash of configuration options

Returns:

  • (Hash)

    The configuration options



43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'lib/agentic/plan_orchestrator_config.rb', line 43

def to_h
  {
    concurrency_limit: @concurrency_limit,
    lifecycle_hooks: @lifecycle_hooks,
    continue_on_failure: @continue_on_failure,
    retry_config: {
      max_retries: @retry_config.max_retries,
      backoff_strategy: @retry_config.backoff_strategy,
      backoff_options: @retry_config.backoff_options
    },
    async: @async
  }
end