scheduler
etl_craft.execution.scheduler ¶
Cooperative ready-task dispatch; gate waits never enter the worker pool.
Scheduler ¶
Advance one run without sleeping; start workers only after gate admission.
__init__ ¶
__init__(engine: Engine, config: ConnectorConfig, pipeline_code: str, pipeline_id: int, pipeline_run_id: int, task_codes: dict[int, str], graph: DependencyGraph, *, force: bool, clock: Clock, child: ChildOptions, pool: ThreadPoolExecutor | None, paused: Callable[[], bool], settle: Callable[[bool], list[int]]) -> None
Keep run state and an executor; no threads start until a task is admitted.
step ¶
Harvest completions, recompute readiness and dispatch; return true when settled.
close ¶
Stop children on interruption, then join workers before releasing run ownership.