# | Batch operation contracts (schema definitions) # | Migrated from: provisioning/kcl/batch.k # | Pattern: Pure schema definitions using Nickel contracts { BatchScheduler = { strategy | String, resource_limits, scheduling_interval | Number, enable_preemption | Bool, }, BatchQueue = { queue_id | String, queue_type | String, max_size | Number, retention_period | Number, dead_letter_queue | String | optional, max_delivery_attempts | Number, }, ResourceConstraint = { resource_type | String, resource_name | String, max_units | Number, current_units | Number, units_per_operation | Number, hard_constraint | Bool, }, BatchMetrics = { detailed_metrics | Bool, retention_hours | Number, aggregation_intervals, custom_metrics, enable_export | Bool, export_config, }, ProviderMixConfig = { primary_provider | String, secondary_providers, provider_selection | String, cross_provider_networking, shared_storage | Dyn | optional, provider_limits, }, BatchHealthCheck = { enabled | Bool, check_interval | Number, check_timeout | Number, failure_threshold | Number, success_threshold | Number, health_checks, failure_actions, }, BatchAutoscaling = { enabled | Bool, min_parallel | Number, max_parallel | Number, scale_up_threshold | Number, scale_down_threshold | Number, cooldown_period | Number, scale_step | Number, target_utilization | Number, }, BatchExecutor = { executor_id | String, name | String, description | String, scheduler | Dyn | optional, queues, resource_constraints, provider_config | Dyn | optional, health_check | Dyn | optional, autoscaling | Dyn | optional, metrics | Dyn | optional, storage | Dyn | optional, security_config, audit_logging | Bool, audit_log_path | String, webhook_endpoints, api_endpoints, performance_config, }, }