What are the benefits to requiring the list of outputs?
- Able to verify basic workflow connectivity using
schema-salad-tool without special knowledge of CWL itself beyond the schema
- As an optimization to prevent copying/transferring of files that don't need copying/transferring.
We could make the out field optional and always make all outputs of the step's Process available to other steps or as final workflow outputs, but then benefit # 1 would not be available. (Possibly it could lead to slower CWL workflow loading and validation)