Agent Skill · cast workflow-brief-to-galaxy-data-flow
Translate a reviewed Workflow Brief and its Galaxy interface into a Galaxy data-flow design brief.
← All cast skills · Source mold →
Install with Claude Code
/plugin marketplace add galaxyproject/foundry
/plugin install foundry-skills@galaxy-workflow-foundry
Then invoke as:
/foundry-skills:workflow-brief-to-galaxy-data-flow
Install with Codex
codex plugin marketplace add galaxyproject/foundry
codex plugin add foundry-skills@galaxy-workflow-foundry
Then select with /skills or invoke explicitly as:
$workflow-brief-to-galaxy-data-flow
Install with Antigravity
git clone https://github.com/galaxyproject/foundry
agy plugin install foundry/casts/claude
Then select with /skills or invoke explicitly as:
/workflow-brief-to-galaxy-data-flow
Skill Bundle
/ packaged cast
- attached files
- 9
- upfront
- 4
- on demand
- 5
- cast rev
- n/a
- validated
- 0
Produces: 2 artifacts.
Consumes: 5 artifacts.
Artifact Contract
/ skill handoff Produces
workflow-brief-galaxy-data-flow
Reviewable Markdown brief: abstract operations, collection map/reduce choices, shape-changing placeholder steps, unresolved Galaxy tool needs, confidence, open questions.
markdownworkflow-brief-galaxy-data-flow.md
Raw artifact contract
{
"id": "workflow-brief-galaxy-data-flow",
"kind": "markdown",
"default_filename": "workflow-brief-galaxy-data-flow.md",
"description": "Reviewable Markdown brief: abstract operations, collection map/reduce choices, shape-changing placeholder steps, unresolved Galaxy tool needs, confidence, open questions."
}
open-requirements-ledger
Carried obligations ledger re-emitted by this step: entries it appended or closed updated, every other entry passed through with its provenance intact.
yamlopen-requirements.ledger.yml
Raw artifact contract
{
"id": "open-requirements-ledger",
"kind": "yaml",
"default_filename": "open-requirements.ledger.yml",
"description": "Carried obligations ledger re-emitted by this step: entries it appended or closed updated, every other entry passed through with its provenance intact."
}
Consumes
workflow-brief
Expert-reviewed implementation contract governing scientific scope, requirements, and acceptance criteria.
Raw artifact contract
{
"id": "workflow-brief",
"description": "Expert-reviewed implementation contract governing scientific scope, requirements, and acceptance criteria.",
"inherited_schema": "[[workflow-brief-schema]]",
"producers": [
"freeform-summary-to-workflow-brief",
"nextflow-summary-to-workflow-brief"
]
}
freeform-summary
Optional narrative source evidence retained from brief production; consult it for details within the selected scope.
Raw artifact contract
{
"id": "freeform-summary",
"description": "Optional narrative source evidence retained from brief production; consult it for details within the selected scope.",
"optional": true,
"producers": [
"interview-to-freeform-summary",
"summarize-paper"
]
}
summary-nextflow
Optional structured Nextflow source evidence; consult it without treating source implementation as Galaxy design.
Raw artifact contract
{
"id": "summary-nextflow",
"description": "Optional structured Nextflow source evidence; consult it without treating source implementation as Galaxy design.",
"optional": true,
"inherited_schema": "[[summary-nextflow]]",
"producers": [
"summarize-nextflow"
]
}
workflow-brief-galaxy-interface
Preceding Galaxy interface brief from [[workflow-brief-to-galaxy-interface]] that pins inputs, outputs, and labels.
Raw artifact contract
{
"id": "workflow-brief-galaxy-interface",
"description": "Preceding Galaxy interface brief from [[workflow-brief-to-galaxy-interface]] that pins inputs, outputs, and labels.",
"producers": [
"workflow-brief-to-galaxy-interface"
]
}
open-requirements-ledger
Carried workflow-run knowledge [[open-requirements-ledger]] initialized by the interface Mold.
Raw artifact contract
{
"id": "open-requirements-ledger",
"description": "Carried workflow-run knowledge [[open-requirements-ledger]] initialized by the interface Mold.",
"producers": [
"advance-galaxy-draft-step",
"apply-galaxy-workflow-changeset",
"compare-against-iwc-exemplar",
"cwl-summary-to-galaxy-data-flow",
"cwl-summary-to-galaxy-interface",
"cwl-summary-to-galaxy-template",
"freeform-summary-to-galaxy-data-flow",
"freeform-summary-to-galaxy-interface",
"freeform-summary-to-galaxy-template",
"implement-galaxy-tool-step",
"interview-to-galaxy-workflow-changeset",
"mature-galaxy-workflow-for-iwc",
"nextflow-summary-to-galaxy-data-flow",
"nextflow-summary-to-galaxy-interface",
"nextflow-summary-to-galaxy-reference-data",
"nextflow-summary-to-galaxy-template",
"repair-galaxy-draft-topology",
"workflow-brief-to-galaxy-data-flow",
"workflow-brief-to-galaxy-interface",
"workflow-brief-to-galaxy-template"
]
}
Attached Files
/ runtime references Load upfront
Keep the data-flow brief separate from gxformat2 templating and concrete step implementation.
upfront runtime verbatim hypothesis deterministic 7.4 KB
- bundle
references/notes/galaxy-data-flow-draft-contract.md - source
content/research/galaxy-data-flow-draft-contract/index.md
Preview md
---
type: research
title: "Galaxy data-flow draft contract"
tags:
- target/galaxy
status: draft
created: 2026-05-02
revised: 2026-09-23
revision: 4
related_notes:
- "[[nextflow-to-galaxy-channel-shape-mapping]]"
- "[[nextflow-operators-to-galaxy-collection-recipes]]"
- "[[galaxy-workflow-draft]]"
related_molds:
- "[[nextflow-summary-to-galaxy-data-flow]]"
- "[[cwl-summary-to-galaxy-data-flow]]"
- "[[freeform-summary-to-galaxy-data-flow]]"
- "[[workflow-brief-to-galaxy-data-flow]]"
- "[[nextflow-summary-to-galaxy-template]]"
- "[[cwl-summary-to-galaxy-template]]"
- "[[freeform-summary-to-galaxy-template]]"
- "[[workflow-brief-to-galaxy-template]]"
- "[[compare-against-iwc-exemplar]]"
- "[[advance-galaxy-draft-step]]"
sources:
- "https://github.com/galaxyproject/foundry/issues/54"
summary: "Defines the proposed boundary between Galaxy data-flow drafts, gxformat2 templates, and concrete step implementation."
---
# Galaxy Data-Flow Draft Contract
This is an architectural contract, not a schema. Evidence is strongest for Mold and Pipeline boundaries. Proposed fields are speculative until exercised by two or three worked translations.
## Boundary
The data-flow draft owns a target-shaped abstract DAG for Galaxy. It should not be valid `gxformat2` and should not resolve exact Tool Shed tools.
Data-flow draft owns:
- Galaxy-facing workflow inputs and outputs.
- Abstract nodes, edges, branches, collection mapping, collection reduction, and placeholder transformations.
- Input/output shape decisions such as `File`, `list`, `paired`, `list:paired`, or `list:list`.
- Conceptual Galaxy idioms: map-over, reduction, Apply Rules, collection cleanup, identifier synchronization, tabular bridge, fan-in / combine (concatenate, merge, or union N sources in
...
Inherit open entries rather than re-deriving them, close the ones this brief's wiring and collection decisions settle, and append data-flow obligations the narrative leaves open — a described transformation with no named tool, an implied intermediate the source never states, an ordering the prose doesn't fix.
upfront runtime verbatim hypothesis deterministic 18.5 KB
- bundle
references/notes/open-requirements-ledger.md - source
content/research/open-requirements-ledger/index.md
Preview md
---
type: research
title: "Open-requirements ledger"
tags:
- target/galaxy
status: draft
created: 2026-06-16
revised: 2026-09-21
revision: 4
related_notes:
- "[[galaxy-workflow-draft-format]]"
related_molds:
- "[[advance-galaxy-draft-step]]"
- "[[repair-galaxy-draft-topology]]"
- "[[implement-galaxy-tool-step]]"
summary: "Carried workflow-run knowledge artifact for obligations, discoveries, decisions, brief-change recommendations, and convergence state."
---
# Open-requirements ledger
The `open-requirements-ledger` is the carried workflow-run knowledge artifact threaded through the source→Galaxy pipeline. It records **obligations the pipeline has taken on but not yet met** — a declared output with no producer, a parameter whose value the source never pinned, a tool with no corpus exemplar — and **source work it decided not to carry**. It also records evidence discovered during implementation, decisions made within the approved scope, and recommended changes to an immutable Workflow Brief. Each Mold that surfaces an obligation **appends** it; each Mold whose decision closes one **marks it resolved**; the terminal path **surrenders** whatever remains open, explicitly, into the final artifact.
This ledger is about the workflow being built. It is distinct from the opt-in `foundry-feedback-ledger`, which records actionable defects or friction in the Foundry assets building it. It is also not the harness's phase-progress tracker: execution status belongs to harness state, checkpoints, and reports rather than requirement entries.
## Framing: obligations the pipeline discharges, not questions a human answers
This is deliberately *not* an "open questions for the user" list. The pipeline is autonomous — no human-in-the-loop gate is assumed. The ledger's consumers a
...
Keep reviewed intent authoritative while using source summaries only as supporting evidence.
upfront runtime verbatim hypothesis deterministic 7.3 KB
- bundle
references/notes/workflow-brief-design.md - source
content/research/workflow-brief-design/index.md
Preview md
---
type: research
title: "Workflow Brief"
tags:
- meta
status: draft
created: 2026-09-17
revised: 2026-09-20
revision: 5
summary: "Markdown Workflow Brief definition and section contract for scope, constraints, agent environment, and explicit blockers."
---
# Workflow Brief
A Workflow Brief is an expert-editable document describing what a workflow should achieve, what it should leave out, and the constraints under which an agent will build and run it. It is an input to design and implementation. The draft workflow captures the proposed steps, wiring, and tool state.
## Document shape
The brief is Markdown with a title and two sections: `## Workflow` and `## Agent Environment`. The workflow needs an objective; most details are optional. The agent environment must contain a description, which can explicitly record what still needs to be checked.
The `workflowBriefSchema` declaration uses the shared engine described in [[markdown-document-contract]] and lives in `packages/gxwf-foundry/src/workflow-brief.ts`. An illustrative document lives in `packages/gxwf-foundry/test/fixtures/workflow-brief/read-alignment.md`.
| Heading | Required | Content |
| --- | --- | --- |
| `## Workflow` | Yes | Scientific intent and scope. |
| `### Objective` | Yes, under Workflow | Scientific goal and desired outcome. |
| `### Sources` | No | Papers, interviews, repositories, relevant source pins, and evidence availability. |
| `### Scope` | No | Optional `#### Included` and `#### Excluded` describe selected work and boundaries. |
| `### Inputs and outputs` | No | Scientific roles and source-supported formats or organization. |
| `### Requirements and preferences` | No | Expert or source requirements, their strength, rationale, and evidence. |
| `### Acceptance criteria` | No | High-lev
...
Carry the required implementation-contract shape into this design step.
upfront runtime verbatim cast-validated deterministic 2.0 KB
- bundle
references/schemas/workflow-brief-schema.schema.json - source
package://@galaxy-foundry/gxwf-foundry#workflowBriefSchema
Preview json
{
"name": "Workflow Brief",
"title": "required",
"sections": [
{
"heading": "Workflow",
"min": 1,
"max": 1,
"content": true,
"sections": [
{
"heading": "Objective",
"min": 1,
"max": 1,
"content": true
},
{
"heading": "Sources",
"max": 1,
"content": true
},
{
"heading": "Scope",
"max": 1,
"content": true,
"sections": [
{
"heading": "Included",
"max": 1,
"content": true
},
{
"heading": "Excluded",
"max": 1,
"content": true
}
]
},
{
"heading": "Inputs and outputs",
"max": 1,
"content": true
},
{
"heading": "Requirements and preferences",
"max": 1,
"content": true
},
{
"heading": "Acceptance criteria",
"max": 1,
"content": true
},
{
"heading": "Open questions",
"max": 1,
"content": true
},
{
"heading": "Decisions",
"max": 1,
"content": true
},
{
"heading": "Related artifacts",
"max": 1,
"content": true
},
{
"heading": "Blockers",
"max": 1
}
]
},
{
"heading": "Agent Environment",
"min": 1,
"max": 1,
"content": true,
"sections": [
{
"heading": "Tooling",
"max": 1,
"content": true
},
{
"heading": "Constraints",
"max": 1,
"content": true
},
{
"heading": "Containerization",
"max": 1,
"content": true
},
{
"heading": "Blockers",
"max": 1
}
]
}
]
}
Load on demand
Ground collection-shape choices in curated, corpus-observed operation and recipe patterns.
Trigger: When selecting collection cleanup, reshape, identifier, or collection-tabular bridge patterns.
on-demand runtime verbatim corpus-observed deterministic 6.1 KB
- bundle
references/patterns/galaxy-collection-patterns.md - source
content/patterns/galaxy-collection-patterns.md
Preview md
---
type: pattern
pattern_kind: moc
evidence: corpus-observed
title: "Galaxy: collection patterns"
aliases:
- "Galaxy collection pattern MOC"
- "collection transformation patterns"
- "IWC collection pattern map"
tags:
- target/galaxy
- topic/galaxy-transform
- topic/collection-transform
status: draft
created: 2026-05-02
revised: 2026-10-15
revision: 4
summary: "Choose a Galaxy collection operation or map-over recipe from the current and required data shapes."
related_notes:
- "[[iwc-transformations-survey]]"
- "[[iwc-conditionals-survey]]"
related_patterns:
- "[[manifest-to-mapped-collection-lifecycle]]"
- "[[cleanup-sync-and-publish-nonempty-results]]"
- "[[reshape-relabel-remap-by-collection-axis]]"
- "[[fan-in-bundle-consume-and-flatten]]"
- "[[collection-cleanup-after-mapover-failure]]"
- "[[collection-unbox-singleton]]"
- "[[sync-collections-by-identifier]]"
- "[[harmonize-by-sortlist-from-identifiers]]"
- "[[regex-relabel-via-tabular]]"
- "[[relabel-via-rules-and-find-replace]]"
- "[[collection-flatten-after-fanout]]"
- "[[collection-build-named-bundle]]"
- "[[collection-swap-nesting-with-apply-rules]]"
- "[[collection-split-identifier-via-rules]]"
- "[[collection-build-list-paired-with-apply-rules]]"
- "[[tabular-to-collection-by-row]]"
- "[[tabular-concatenate-collection-to-table]]"
- "[[tabular-pivot-collection-to-wide]]"
related_molds:
- "[[implement-galaxy-tool-step]]"
- "[[nextflow-summary-to-galaxy-data-flow]]"
- "[[cwl-summary-to-galaxy-data-flow]]"
- "[[nextflow-summary-to-galaxy-template]]"
- "[[cwl-summary-to-galaxy-template]]"
- "[[freeform-summary-to-galaxy-template]]"
- "[[workflow-brief-to-galaxy-template]]"
- "[[compare-against-iwc-exemplar]]"
---
# Galaxy: collection patterns
Ch
...
Ground conditional-branch and optional-step choices in curated, corpus-observed Galaxy when/pick_value patterns.
Trigger: When data-flow translation needs optional steps, gating on non-empty results, routing between alternative outputs, or transform-or-pass-through branches.
on-demand runtime verbatim corpus-observed deterministic 3.6 KB
- bundle
references/patterns/galaxy-conditionals-patterns.md - source
content/patterns/galaxy-conditionals-patterns.md
Preview md
---
type: pattern
pattern_kind: moc
evidence: corpus-observed
title: "Galaxy: conditionals patterns"
aliases:
- "Galaxy conditional pattern MOC"
- "Galaxy when patterns"
- "conditional workflow patterns"
tags:
- target/galaxy
- topic/galaxy-transform
status: draft
created: 2026-05-02
revised: 2026-10-15
revision: 4
summary: "Choose a Galaxy when gate, routed output, fallback, or collection cleanup by what must change downstream."
related_notes:
- "[[iwc-conditionals-survey]]"
related_patterns:
- "[[conditional-run-optional-step]]"
- "[[conditional-route-between-alternative-outputs]]"
- "[[conditional-gate-on-nonempty-result]]"
- "[[conditional-transform-or-pass-through]]"
- "[[collection-cleanup-after-mapover-failure]]"
related_molds:
- "[[implement-galaxy-tool-step]]"
- "[[nextflow-summary-to-galaxy-data-flow]]"
- "[[cwl-summary-to-galaxy-data-flow]]"
- "[[nextflow-summary-to-galaxy-template]]"
- "[[cwl-summary-to-galaxy-template]]"
- "[[freeform-summary-to-galaxy-template]]"
- "[[workflow-brief-to-galaxy-template]]"
- "[[compare-against-iwc-exemplar]]"
---
# Galaxy: conditionals patterns
Choose by what should happen when the condition is false: skip a step, select one value for a continuing path, or remove unusable collection members. The linked pages give the construction details. The [[iwc-conditionals-survey]] records the IWC evidence behind them.
Galaxy steps in the observed patterns receive a boolean through an input named `when` and declare `when: $(inputs.when)`. If later steps require an output from a skipped branch, give them an explicit merge or fallback. A `when` gate alone does not provide that value.
## Skip work without replacing its output
- **User choice or another available boolean:** [[conditional-run-option
...
Ground genomic-interval operation choices in curated, corpus-observed Galaxy interval recipes.
Trigger: When the workflow operates on genomic intervals (BED/GFF/VCF coordinate features) and data-flow translation needs overlap, merge, coverage, windowing, masking, or set-algebra steps.
on-demand runtime verbatim corpus-observed deterministic 5.5 KB
- bundle
references/patterns/galaxy-interval-patterns.md - source
content/patterns/galaxy-interval-patterns.md
Preview md
---
type: pattern
pattern_kind: moc
evidence: corpus-observed
title: "Galaxy: genomic interval patterns"
aliases:
- "Galaxy interval pattern MOC"
- "genomic interval transformation patterns"
- "IWC interval pattern map"
tags:
- target/galaxy
- topic/galaxy-transform
- topic/interval-transform
status: draft
created: 2026-06-10
revised: 2026-09-23
revision: 4
summary: "Use this MOC to choose corpus-grounded Galaxy genomic interval operations and recipes on coordinate features."
related_notes:
- "[[iwc-interval-operations-survey]]"
related_patterns:
- "[[interval-overlap-filter]]"
- "[[interval-coverage]]"
- "[[interval-merge-overlapping]]"
- "[[interval-window-flank]]"
- "[[interval-consensus-by-multi-intersect]]"
- "[[interval-mask-by-set-algebra]]"
- "[[interval-windowed-coverage]]"
- "[[tabular-synthesize-bed-from-3col]]"
related_molds:
- "[[implement-galaxy-tool-step]]"
- "[[nextflow-summary-to-galaxy-data-flow]]"
- "[[cwl-summary-to-galaxy-data-flow]]"
- "[[nextflow-summary-to-galaxy-template]]"
- "[[cwl-summary-to-galaxy-template]]"
- "[[freeform-summary-to-galaxy-template]]"
- "[[workflow-brief-to-galaxy-template]]"
- "[[compare-against-iwc-exemplar]]"
---
# Galaxy: genomic interval patterns
The runtime-facing map for Galaxy **coordinate-feature** choices — operations that understand `chrom/start/end/strand`, as opposed to opaque-column [[galaxy-tabular-patterns]] or container-shaped [[galaxy-collection-patterns]]. Use it before loading raw survey notes; [[iwc-interval-operations-survey]] is the evidence backing, these pages are the actionable references.
This is the smallest of the three data-shape MOCs by design. Interval algebra is a real but moderate cluster in IWC — concentrated in epigenetics peak-consensus and
...
Ground tabular bridge and table-operation choices in curated, corpus-observed operation patterns.
Trigger: When data-flow translation needs filtering, joining, aggregation, pivoting, or tabular-collection bridges.
on-demand runtime verbatim corpus-observed deterministic 4.8 KB
- bundle
references/patterns/galaxy-tabular-patterns.md - source
content/patterns/galaxy-tabular-patterns.md
Preview md
---
type: pattern
pattern_kind: moc
evidence: corpus-observed
title: "Galaxy: tabular patterns"
aliases:
- "Galaxy tabular pattern MOC"
- "tabular transformation patterns"
- "IWC tabular pattern map"
tags:
- target/galaxy
- topic/galaxy-transform
- topic/tabular-transform
status: draft
created: 2026-05-02
revised: 2026-10-15
revision: 4
summary: "Use this MOC to choose corpus-grounded Galaxy tabular transformation patterns."
related_notes:
- "[[iwc-tabular-operations-survey]]"
related_patterns:
- "[[tabular-filter-by-column-value]]"
- "[[tabular-filter-by-regex]]"
- "[[tabular-cut-and-reorder-columns]]"
- "[[tabular-compute-new-column]]"
- "[[tabular-join-on-key]]"
- "[[tabular-group-and-aggregate-with-datamash]]"
- "[[tabular-sql-query]]"
- "[[tabular-prepend-header]]"
- "[[tabular-synthesize-bed-from-3col]]"
- "[[tabular-split-taxonomy-string]]"
- "[[tabular-relabel-by-row-counter]]"
- "[[tabular-to-collection-by-row]]"
- "[[tabular-concatenate-collection-to-table]]"
- "[[tabular-pivot-collection-to-wide]]"
related_molds:
- "[[implement-galaxy-tool-step]]"
- "[[nextflow-summary-to-galaxy-data-flow]]"
- "[[cwl-summary-to-galaxy-data-flow]]"
- "[[nextflow-summary-to-galaxy-template]]"
- "[[cwl-summary-to-galaxy-template]]"
- "[[freeform-summary-to-galaxy-template]]"
- "[[workflow-brief-to-galaxy-template]]"
- "[[compare-against-iwc-exemplar]]"
---
# Galaxy: tabular patterns
Choose by the shape of the input and the result you need. These patterns treat table columns as values, even when a column contains coordinates or sequence text. For coordinate-aware operations use [[galaxy-interval-patterns]], and for FASTA records use [[galaxy-sequence-patterns]]. Open the linked operation page for tool parameters and exam
...
Preserve per-row metadata on the data-flow side: keep sample_sheet column_definitions wired through identifier-keyed steps instead of dropping into parallel parameter inputs, and re-attach metadata after map-over steps that lose it.
Trigger: When the interface brief carries a sample_sheet[:paired|:paired_or_unpaired|:record] input, or supporting evidence describes per-sample/per-record metadata that must survive map-over steps.
on-demand runtime verbatim corpus-observed deterministic 8.4 KB
- bundle
references/notes/galaxy-sample-sheet-collections.md - source
content/research/galaxy-sample-sheet-collections/index.md
Preview md
---
type: research
title: "Galaxy sample_sheet collection types"
tags:
- target/galaxy
status: draft
created: 2026-05-05
revised: 2026-05-06
revision: 2
related_notes:
- "[[galaxy-collection-semantics]]"
- "[[galaxy-collection-tools]]"
- "[[nextflow-workflow-io-semantics]]"
- "[[nextflow-params-to-galaxy-inputs]]"
- "[[nextflow-path-glob-to-galaxy-datatype]]"
- "[[nextflow-to-galaxy-channel-shape-mapping]]"
- "[[nextflow-to-galaxy-reference-data-mapping]]"
related_molds:
- "[[nextflow-summary-to-galaxy-interface]]"
- "[[nextflow-summary-to-galaxy-data-flow]]"
sources:
- "Galaxy PR #19305 (Implement Sample Sheets), merged 2025-07-30"
- "lib/galaxy/model/dataset_collections/types/sample_sheet.py"
- "lib/galaxy/model/dataset_collections/types/sample_sheet_util.py"
- "lib/galaxy/model/dataset_collections/type_description.py"
- "lib/galaxy/schema/schema.py (SampleSheetColumnDefinition, SampleSheetRow)"
- "lib/galaxy/tools/wrappers.py (DatasetCollectionWrapper.sample_sheet_row)"
- "lib/galaxy/tools/sample_sheet_to_tabular.xml"
- "lib/galaxy/webapps/galaxy/api/dataset_collections.py (sample_sheet_workbook endpoints)"
- "lib/galaxy/model/migrations/alembic/versions_gxy/3af58c192752_implement_sample_sheets.py"
summary: "Galaxy's sample_sheet collection family: typed column metadata, four variants, mapping rules, validator allowlist."
---
# Galaxy sample_sheet collection types
Reference for the Galaxy backend shape that targets structured per-row metadata — the natural landing zone for Nextflow `samplesheetToList` parameters and for any source-side idiom that pairs typed metadata columns with dataset references.
## Shape
A `sample_sheet` is a list-shaped collection where each element carries a typed `columns` row, and the parent collectio
...
SKILL.md
# workflow-brief-to-galaxy-data-flow
Follow the procedure below and use the artifact/reference sections as the runtime contract.
## When To Use
- Translate a reviewed Workflow Brief and its Galaxy interface into a Galaxy data-flow design brief.
## Inputs
- Read artifact `workflow-brief`. Schema: workflow-brief-schema. Produced by `freeform-summary-to-workflow-brief`, `nextflow-summary-to-workflow-brief`. Expert-reviewed implementation contract governing scientific scope, requirements, and acceptance criteria.
- Read artifact `freeform-summary`. Optional; absence is allowed and must be reported honestly. Produced by `interview-to-freeform-summary`, `summarize-paper`. Optional narrative source evidence retained from brief production; consult it for details within the selected scope.
- Read artifact `summary-nextflow`. Optional; absence is allowed and must be reported honestly. Schema: summary-nextflow. Produced by `summarize-nextflow`. Optional structured Nextflow source evidence; consult it without treating source implementation as Galaxy design.
- Read artifact `workflow-brief-galaxy-interface`. Produced by `workflow-brief-to-galaxy-interface`. Preceding Galaxy interface brief from workflow-brief-to-galaxy-interface that pins inputs, outputs, and labels.
- Read artifact `open-requirements-ledger`. Produced by `advance-galaxy-draft-step`, `apply-galaxy-workflow-changeset`, `compare-against-iwc-exemplar`, `cwl-summary-to-galaxy-data-flow`, `cwl-summary-to-galaxy-interface`, `cwl-summary-to-galaxy-template`, `freeform-summary-to-galaxy-data-flow`, `freeform-summary-to-galaxy-interface`, `freeform-summary-to-galaxy-template`, `implement-galaxy-tool-step`, `interview-to-galaxy-workflow-changeset`, `mature-galaxy-workflow-for-iwc`, `nextflow-summary-to-galaxy-data-flow`, `nextflow-summary-to-galaxy-interface`, `nextflow-summary-to-galaxy-reference-data`, `nextflow-summary-to-galaxy-template`, `repair-galaxy-draft-topology`, `workflow-brief-to-galaxy-data-flow`, `workflow-brief-to-galaxy-interface`, `workflow-brief-to-galaxy-template`. Carried workflow-run knowledge open-requirements-ledger initialized by the interface Mold.
## Outputs
- Write artifact `workflow-brief-galaxy-data-flow` as `workflow-brief-galaxy-data-flow.md`. Format: `markdown`. Reviewable Markdown brief: abstract operations, collection map/reduce choices, shape-changing placeholder steps, unresolved Galaxy tool needs, confidence, open questions.
- Write artifact `open-requirements-ledger` as `open-requirements.ledger.yml`. Format: `yaml`. Carried obligations ledger re-emitted by this step: entries it appended or closed updated, every other entry passed through with its provenance intact.
## Required Tools
- None declared. Procedure should not assume external CLIs are present.
## Load Upfront
- `references/notes/galaxy-data-flow-draft-contract.md`: Research note copied verbatim into the bundle. Keep the data-flow brief separate from gxformat2 templating and concrete step implementation.
- `references/notes/open-requirements-ledger.md`: Research note copied verbatim into the bundle. Inherit open entries rather than re-deriving them, close the ones this brief's wiring and collection decisions settle, and append data-flow obligations the narrative leaves open — a described transformation with no named tool, an implied intermediate the source never states, an ordering the prose doesn't fix.
- `references/notes/workflow-brief-design.md`: Research note copied verbatim into the bundle. Keep reviewed intent authoritative while using source summaries only as supporting evidence.
- `references/schemas/workflow-brief-schema.schema.json`: Schema file copied verbatim into the bundle. Carry the required implementation-contract shape into this design step.
## Load On Demand
- `references/patterns/galaxy-collection-patterns.md`: Pattern note copied verbatim into the bundle. Ground collection-shape choices in curated, corpus-observed operation and recipe patterns. Use when: selecting collection cleanup, reshape, identifier, or collection-tabular bridge patterns.
- `references/patterns/galaxy-conditionals-patterns.md`: Pattern note copied verbatim into the bundle. Ground conditional-branch and optional-step choices in curated, corpus-observed Galaxy when/pick_value patterns. Use when: data-flow translation needs optional steps, gating on non-empty results, routing between alternative outputs, or transform-or-pass-through branches.
- `references/patterns/galaxy-interval-patterns.md`: Pattern note copied verbatim into the bundle. Ground genomic-interval operation choices in curated, corpus-observed Galaxy interval recipes. Use when: the workflow operates on genomic intervals (BED/GFF/VCF coordinate features) and data-flow translation needs overlap, merge, coverage, windowing, masking, or set-algebra steps.
- `references/patterns/galaxy-tabular-patterns.md`: Pattern note copied verbatim into the bundle. Ground tabular bridge and table-operation choices in curated, corpus-observed operation patterns. Use when: data-flow translation needs filtering, joining, aggregation, pivoting, or tabular-collection bridges.
- `references/notes/galaxy-sample-sheet-collections.md`: Research note copied verbatim into the bundle. Preserve per-row metadata on the data-flow side: keep sample_sheet column_definitions wired through identifier-keyed steps instead of dropping into parallel parameter inputs, and re-attach metadata after map-over steps that lose it. Use when: the interface brief carries a sample_sheet[:paired|:paired_or_unpaired|:record] input, or supporting evidence describes per-sample/per-record metadata that must survive map-over steps.
## Validation
- None declared.
## Procedure
Read the reviewed Workflow Brief plus the preceding Galaxy interface brief and emit a reviewable Markdown data-flow brief. Consult retained source evidence when available. Capture abstract operations, collection map/reduce choices, shape-changing placeholder transformations, unresolved Galaxy tool needs, confidence, and open questions.
The Workflow Brief governs scope and requirements. A `freeform-summary` or `summary-nextflow` can substantiate details within that scope but cannot broaden it or turn source implementation into assumed Galaxy wiring. Translate what the brief, interface, and evidence support; classify the rest as unresolved tool needs or ledger obligations. If correct implementation requires changing reviewed intent, propose a brief change and stop rather than silently applying it.
The output is not gxformat2 and should not resolve exact Tool Shed tools. workflow-brief-to-galaxy-template turns this handoff and the interface brief into a skeleton.
## Feedback Mode
- Feedback mode is off unless the caller explicitly enables `--feedback` or supplies a feedback-ledger path.
- When enabled, read `_feedback.md` before doing the work and use its registered `foundry-feedback.ledger.yml` protocol.
- Preserve harness-owned run and phase state. Append only concrete observations about a canonical Foundry source asset or a related project that this run showed to be at fault; do not put ordinary workflow requirements in this ledger.
- Before reporting completion, make one explicit pass over the work you just did. Do not ask yourself whether anything was unclear — recall what happened: where you guessed at something the instructions should have settled, needed information this bundle does not carry, hit an instruction that contradicted another or contradicted the artifacts in front of you, used a packaged reference that did not cover your case, or did something the procedure never describes.
- Append an entry for each such event that clears the protocol's bar. If none do, append nothing and report `no feedback` explicitly. Silence and a clean pass are not the same thing, and nothing downstream can tell them apart unless you say which one it was.
- Pass the same ledger path to any subagent used for this work, and merge updates serially so one writer cannot overwrite another.
## Runtime Notes
- Do not read Foundry source files at runtime; use only files packaged in this skill bundle and user-supplied artifacts.
- Preserve declared artifact filenames unless the user or harness supplies explicit paths.
- Carry unresolved assumptions into the output artifact instead of silently inventing missing source evidence.