Benchling Pipeline Step API
Represents a single operation node within a Pipeline's directed acyclic graph (DAG). Each step performs a specific transformation determined by its stepType (see `PipelineStepType`), with configuration options stored in the config field. Steps receive data through inputStepDatas and produce results via outputStepDatas (see `PipelineStepData`). The incomingEdges and outgoingEdges (see `PipelineStepEdge`) define the data flow connections to other steps. Execution state is tracked through statusCode and statusMessage. Steps support provenance tracking through the provenanceUri field for tracing data lineage.