Summary: Add metadata to Pipeline classes declaring what data products they require and produce, with support for conditional dependencies.
Description:
Pipeline classes should declare:
available_outputs: What data products this pipeline can produce (e.g., posterior_samples, psd, calibration)
required_inputs: What data products this pipeline needs to run (e.g., frame_files, psd, calibration)
Support for conditional inputs/outputs based on production configuration (e.g., calibration only needed if calibration-model is set)
Methods needed:
get_actual_outputs(production): Returns list of outputs this specific production will generate
get_actual_inputs(production): Returns list of inputs this specific production requires
_check_condition(production, condition): Evaluates whether a conditional requirement is met
Benefits:
Enables dependency validation before job submission
Provides foundation for automatic dependency resolution
Prevents runtime failures due to missing data products
Summary: Add metadata to Pipeline classes declaring what data products they require and produce, with support for conditional dependencies.
Description:
Pipeline classes should declare:
available_outputs: What data products this pipeline can produce (e.g., posterior_samples, psd, calibration)
required_inputs: What data products this pipeline needs to run (e.g., frame_files, psd, calibration)
Support for conditional inputs/outputs based on production configuration (e.g., calibration only needed if calibration-model is set)
Methods needed:
get_actual_outputs(production): Returns list of outputs this specific production will generate
get_actual_inputs(production): Returns list of inputs this specific production requires
_check_condition(production, condition): Evaluates whether a conditional requirement is met
Benefits:
Enables dependency validation before job submission
Provides foundation for automatic dependency resolution
Prevents runtime failures due to missing data products