io.workflow_utils
vhrharmonize.io.workflow_utils
¶
Shared workflow path and skip helpers.
StepOutputPlan
dataclass
¶
Resolved output paths and pending work for a workflow step.
resolve_relative_to_input(path, input_folder)
¶
Resolve a path against an input folder. Args: path: Candidate relative or absolute path. input_folder: Input folder used for relative resolution. Returns: Resolved absolute or normalized path.
resolve_temp_dir(configured_dir, *, input_folder)
¶
Resolve a workflow temp directory. Args: configured_dir: Configured temp directory or None. input_folder: Input folder used for relative resolution. Returns: Resolved temp directory path.
resolve_output_dir(configured_dir, *, temp_dir, step_name)
¶
Resolve a workflow output directory. Args: configured_dir: Configured output directory or None. temp_dir: Temp directory used when no explicit output directory is provided. step_name: Workflow step name. Returns: Resolved output directory path.
build_output_path_from_input(input_path, output_dir, *, suffix='', extension=None)
¶
Build an output path from an input basename. Args: input_path: Source file path. output_dir: Output directory. suffix: Suffix to append before the extension. extension: Optional extension override. Returns: Resolved output file path.
plan_step_outputs(input_paths, *, output_dir, suffix='', extension=None, skip_existing=False)
¶
Plan step outputs and pending work. Args: input_paths: Input file paths for the step. output_dir: Output directory for generated files. suffix: Suffix to append before the extension. extension: Optional extension override. skip_existing: Whether to exclude already existing outputs from pending work. Returns: Planned output paths and pending work details.