Home Mold

summarize-galaxy-workflow

Read an existing Galaxy gxformat2 (or .ga) workflow and emit a structured summary for interview and change-set steps.

Mold health

warn
  • Source layout

    Directory Mold with only index.md frontmatter.

  • Axis fields

    source-specific fields are coherent.

  • Eval plan

    Abstract oracle: fixture-independent property checks any run must satisfy.

    eval.md declares properties and check type.

    eval.md ↗
  • Scenarios

    Concrete cases: fixtures bound to expected values, run against the eval properties.

    scenarios.md not written yet.

  • Typed refs

    4 typed references; 0 resolver issues.

  • On-demand triggers

    All on-demand references describe triggers.

  • Evidence checks

    Hypothesis references include verification.

axis
source-specific
source
galaxy
name
summarize-galaxy-workflow
contract

Reference Loading

Typed Mold references describe what casting consumes and when the generated skill should load each artifact.

CLI Commandconvert

Command reference. Usually cast to a sidecar and loaded only when invoked.

Purpose
Convert a legacy `.ga` workflow to gxformat2 before summarizing, and record the conversion under documents.converted_path.
Trigger
When the supplied workflow is native `.ga` rather than gxformat2.
Verify
Cast the skill, run on one `.ga` and one gxformat2 fixture; confirm the `.ga` case populates documents.converted_path and both summaries validate.
CLI Commandgxwf validate

Command reference. Usually cast to a sidecar and loaded only when invoked.

Purpose
Validate the gxformat2 workflow before extraction and record diagnostics under documents.validation.
Trigger
Before extracting structure from the workflow document.
Verify
Cast the skill, run on one valid and one malformed workflow; the malformed one surfaces gxwf validate diagnostics in the summary.
CLI Toolfoundry

Tool-level install metadata. Aggregated into the cast bundle's Required Tools section.

Purpose
Schema-check summary-galaxy-workflow.json with `foundry validate-summary-galaxy-workflow` before returning it from the skill.

Artifact handoffs

/ pipeline contract

Produces

summarize-galaxy-workflow

Read an existing Galaxy workflow and emit summary-galaxy-workflow.json. This Mold is source-specific and target-agnostic: it records what the workflow is — inputs, outputs, steps, wiring, and existing tests — and leaves every modification decision to the downstream change-set and apply Molds. It mirrors summarize-cwl on the Galaxy-as-source side.

gxformat2 is already a typed workflow graph, so do not infer structure — read it. The summary is an LLM-digestible index of the existing workflow that anchors the interview and the change-set; it is context, not the substrate edits apply to. The substrate the edits are applied against is the raw gxformat2 workflow file itself (owned by apply-galaxy-workflow-changeset).

Inputs

  • A local workflow path or an HTTP(S) URL. Accept both gxformat2 (.gxwf.yml / .gxfmt2.yml) and legacy native .ga.
  • Optional pin/version metadata supplied by the harness or user.
  • Optional sibling tests file (*-tests.yml); if none is supplied or discoverable, emit tests: [].

Procedure

  1. Normalize format. If the input is native .ga, convert it to gxformat2 with convert (--to format2) and record the output path in documents.converted_path. If it is already gxformat2, leave converted_path null. Set source.original_format accordingly. All downstream extraction reads the gxformat2 form.
  2. Validate. Run gxwf validate on the gxformat2 workflow and record command, status, and diagnostics under documents.validation. If invalid, still emit source provenance and diagnostics; do not invent graph structure past what parses.
  3. Extract the interface. Record workflow_inputs (class data / collection / parameter, collection_type, optionality, defaults, format restrictions) and workflow_outputs (each promoted step/output source), preserving gxformat2 labels verbatim — those labels are the anchors the change-set will address.
  4. Extract steps. For each step record its class, tool_id, tool_version, pinned tool_shed_repository, verbatim tool_state, named input connections with their upstream sources, declared outputs, and any when: guard. Keep tool_state verbatim so a later change-set can address an individual parameter.
  5. Build the graph. Emit workflow-input → step, step → step, and step → workflow-output edges. Add via markers for shape-affecting features (map-over, batch, collection reduction).
  6. Record tests. When a sibling tests file or embedded tests exist, record each case’s name, job path, and expected outputs as the regression baseline. Do not fabricate expected outputs from tool names.
  7. Schema-check. Validate the assembled object with foundry validate-summary-galaxy-workflow summary-galaxy-workflow.json before returning it.

Caveats Baked Into The Procedure

  • Labels are load-bearing. Preserve step and input labels exactly; the change-set anchors edits to them, and a relabel here would silently break that anchoring.
  • tool_state is preserved, not interpreted. Record it verbatim. Deciding which parameter an interview wants changed is the change-set’s job, not this Mold’s.
  • Existing tests are the regression baseline. Capture them faithfully; the update pipeline judges the modified workflow against them.
  • Conversion is lossy-aware. If .ga → gxformat2 conversion drops or rewrites anything, surface it in warnings[] rather than presenting a clean summary.

Non-Goals

Incoming References (5)

  • changeset-to-galaxy-test-planrelated mold— Carry an existing Galaxy workflow's tests forward as a regression baseline and augment them for a change-set's deltas, emitting a Galaxy test plan.
  • interview-to-galaxy-workflow-changesetrelated note— Interview a user against an existing Galaxy workflow summary and emit a reviewable, step-anchored change-set.
  • interview-to-galaxy-workflow-changesetrelated mold— Interview a user against an existing Galaxy workflow summary and emit a reviewable, step-anchored change-set.
  • UPDATE-INTERVIEW → GALAXYphase of pipeline— Interview-driven, edit-in-place modification of an existing Galaxy gxformat2 workflow via a reviewable change-set, reusing the per-step draft loop.
  • Galaxy workflow summaryrelated note— JSON Schema for the structured summary emitted by the summarize-galaxy-workflow Mold.