common-workflow-language / common-workflow-language/cwl-v1.2

#main vs main, inconsistencies

Open
#140 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Common Workflow Language
Stars
45
Forks
28
PR merge metrics
No merged PRs in 30d

Description

https://www.commonwl.org/v1.2/Workflow.html#Packed_documents reminds us that
> If the reference to the packed document does not include a fragment identifier, the runner must choose the top-level process object as the entry point. If there is no top-level process object (as in the case of `$graph`) then the runner must choose the process object with an id of `#main`. If there is no `#main` object, the runner must return an error.

Though https://www.commonwl.org/v1.2/Workflow.html#Generic_execution_process does state that
> 3. If there are multiple process objects (due to `$graph`) and which process object to start with is not specified in the input object (via a `cwl:tool` entry) or by any other means (like a URL fragment) then choose the process with the `id` of "#main" or "main".

That is a bit inconsistent, we should probably mention the plain `main` in https://www.commonwl.org/v1.2/Workflow.html#Packed_documents (and ensure there is a conformance test using that)

Contributor guide

No contributing guide indexed for this repository

Research direction

Read the linked Packed_documents and Generic_execution_process sections to compare their handling of `#main` and `main`. Update the Packed_documents wording to cover plain `main`, then locate the conformance tests and add coverage for that entry-point case; done means the specification and test agree.

Written by the indexing model from the issue text.

Assessment

Domain
documentation, testing
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.