Skip to content

Add Pipeline Input/Output Metadata System #94

@transientlunatic

Description

@transientlunatic

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestpipelinesInteractions with pipelines

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions