galaxyproject / galaxyproject/gxformat2
Support native Galaxy color and directory_uri workflow parameter inputs in gxformat2
- Dominant language
- Python
- Stars
- 14
- Forks
- 7
- Avg merge
- 2h 49m
- Merged PRs (30d)
- 8
Description
## Problem
Galaxy native workflow parameter inputs expose `color` and `directory_uri`, but gxformat2 workflow input types do not currently make these first-class input parameter types.
If native Galaxy supports these workflow parameter inputs, gxformat2 should be able to represent them explicitly instead of forcing them through text-compatible fallback behavior.
## Current behavior to verify
Galaxy native workflow parameter input types include:
- `text`
- `integer`
- `float`
- `boolean`
- `color`
- `directory_uri`
gxformat2 pydantic discrimination currently maps `color` to `WorkflowTextParameter`, but `directory_uri` does not appear as a declared gxformat2 workflow input type.
## Proposed behavior
Add explicit gxformat2 support for native Galaxy workflow parameter input types:
- `color`
- `directory_uri`
These should round-trip through:
- native Galaxy `.ga` workflow state
- gxformat2 normalized export
- gxformat2 import back to native Galaxy workflow state
- generated pydantic models
- generated JSON Schema
## Open questions
- Should `color` remain text-compatible internally while being declared as its own gxformat2 type?
- Should `directory_uri` be represented as a scalar parameter type, or should it have a richer file/directory URI shape?
- Should these types be included in the recommended gxformat2 authoring vocabulary once implemented?
## Acceptance criteria
- SALAD declares `color` and `directory_uri` workflow input types or equivalent concrete parameter records.
- Generated pydantic models accept both types without falling back to generic data/text behavior.
- Generated JSON Schema accepts both types.
- Native-to-format2 conversion preserves native `parameter_type: color` and `parameter_type: directory_uri`.
- Format2-to-native conversion restores native `parameter_type: color` and `parameter_type: directory_uri`.
- Tests cover import/export round trips for both types.
Contributor guide
Assessment
This issue has not been assessed yet.