cwl-summary-to-galaxy-template
Read the original CWL source artifact, the CWL summary, the CWL-to-Galaxy interface brief, and the CWL-to-Galaxy data-flow brief. Emit a gxformat2 skeleton with workflow inputs, workflow outputs, placeholder steps, rough connections, and TODO slots for later implementation Molds.
CWL already carries structured workflow shape, so this Mold should be lighter than nextflow-summary-to-galaxy-template. Treat the prior-step index as the working context: CWL source, CWL summary, interface brief, data-flow brief, and any open questions carried forward.
Topology is this Mold’s job to settle. The output must be concrete gxformat2: workflow inputs with their final collection shapes and formats, workflow outputs, the step set, the producer→consumer edge graph, branches, and when: guards are all decided here. The upstream interface and data-flow briefs guide those decisions, but if they hedge or leave a topology choice open, this Mold makes the call from source evidence, IWC exemplars, and pattern pages — never emit a topology TODO. Wrapper resolution, by contrast, is evidence-gated, not source-gated: resolve each tool step to the tier its evidence supports — Resolved (fully concrete, no _plan_*), Identity-pinned (concrete tool_id, parameters and changeset left to the per-step Mold), or Deferred (tool_id: TODO) — as defined in galaxy-workflow-draft-format. Capture whatever you defer in the _plan_* family (_plan_state, _plan_context, _plan_in, _plan_out) so the per-step Mold has the source evidence and constraints it needs.
Source tendency: a CWL CommandLineTool carries baseCommand / arguments, DockerRequirement / SoftwareRequirement hints, and explicit input/output bindings — so identity is often inferable to Identity-pinned, and a step reaches Resolved when a pattern page or IWC exemplar covers the operation (fill tool_id, parameters, and port names from the worked example). A custom-script tool with no Galaxy equivalent stays Deferred — pack _plan_context with the baseCommand / arguments, DockerRequirement URIs, SoftwareRequirement packages, and EnvVarRequirement / ResourceRequirement constraints the per-step Mold needs to pick a wrapper. Emitting TODO over a pattern-covered recipe discards real evidence the per-step Mold cannot recover.
Output shape is gxformat2 with wrapper-tier relaxations and _plan_state / _plan_context / _plan_in / _plan_out per tool step — see galaxy-workflow-draft-format. Refinement open work for those planning fields lives in refinement.md.
Use CWL step ids as the first pass for placeholder labels, then revise labels only when the interface/data-flow briefs or IWC comparison notes give a clearer Galaxy convention. Preserve one placeholder per logical CWL step unless the data-flow brief explicitly asks to split an expression, nested workflow, or collection operation into Galaxy-native steps.