# Orchestrator Batch Workflow Configuration Fragment

[[elements]]
border_top = true
border_bottom = false
name = "batch_section_header"
title = "🔄 Batch Workflow Configuration"
type = "section_header"

[[elements]]
default = 5
help = "Parallel operation limit for batch jobs (range: ${constraint.orchestrator.batch.parallel_limit.min}-${constraint.orchestrator.batch.parallel_limit.max})"
max = "${constraint.orchestrator.batch.parallel_limit.max}"
min = "${constraint.orchestrator.batch.parallel_limit.min}"
name = "batch_parallel_limit"
nickel_path = ["batch", "parallel_limit"]
prompt = "Parallel Limit"
type = "number"

[[elements]]
default = 1800000
help = "Batch operation timeout in milliseconds (range: ${constraint.orchestrator.batch.operation_timeout.min}-${constraint.orchestrator.batch.operation_timeout.max})"
min = "${constraint.orchestrator.batch.operation_timeout.min}"
max = "${constraint.orchestrator.batch.operation_timeout.max}"
name = "batch_operation_timeout"
nickel_path = ["batch", "operation_timeout"]
prompt = "Operation Timeout (ms)"
type = "number"

[[elements]]
default = true
help = "Enable checkpoint support for batch recovery"
name = "batch_checkpointing_enabled"
nickel_path = ["batch", "checkpointing", "enabled"]
prompt = "Enable Checkpointing"
type = "confirm"

[[elements]]
condition = "batch_checkpointing_enabled == true"
default = 100
help = "Checkpoint interval (number of operations before checkpoint)"
min = 10
name = "batch_checkpoint_interval"
nickel_path = ["batch", "checkpointing", "interval"]
prompt = "Checkpoint Interval"
type = "number"

[[elements]]
condition = "batch_checkpointing_enabled == true"
default = 10
help = "Maximum number of checkpoints to keep"
min = 1
name = "batch_checkpoint_max_checkpoints"
nickel_path = ["batch", "checkpointing", "max_checkpoints"]
prompt = "Max Checkpoints"
type = "number"

[[elements]]
default = true
help = "Enable rollback strategy for failed batches"
name = "batch_rollback_enabled"
nickel_path = ["batch", "rollback", "enabled"]
prompt = "Enable Rollback"
type = "confirm"

[[elements]]
condition = "batch_rollback_enabled == true"
default = "checkpoint_based"
help = "Rollback strategy (checkpoint_based, full, partial)"
name = "batch_rollback_strategy"
nickel_path = ["batch", "rollback", "strategy"]
options = ["checkpoint_based", "full", "partial"]
prompt = "Rollback Strategy"
type = "select"

[[elements]]
condition = "batch_rollback_enabled == true"
default = 5
help = "Maximum rollback depth"
max = 20
min = 1
name = "batch_rollback_max_depth"
nickel_path = ["batch", "rollback", "max_rollback_depth"]
prompt = "Max Rollback Depth"
type = "number"

[[elements]]
default = false
help = "Enable batch operation metrics"
name = "batch_metrics"
nickel_path = ["batch", "metrics"]
prompt = "Batch Metrics"
type = "confirm"
