galaxyproject / galaxyproject/loom

Workflow invocation mangles empty/optional parameters (ConnectedValue object stringified into the value)

Open
#186 2 comments 0 reactions 1 assignee Claimed by @dannon View on GitHub
bug
Dominant language
TypeScript
Stars
14
Forks
12
Avg merge
6d 5h
Merged PRs (30d)
17

Description

Reported via Orbit beta feedback (0.3.0).

Invoking a workflow with an empty/unset optional parameter sends the literal Python repr of a Galaxy `ConnectedValue` object as the value instead of leaving it empty. fastp then rejects it:

ERROR: the adapter can only have bases in {A, T, C, G},
but the given sequence is: XX

So an empty `adapter_sequence` gets serialized as the placeholder object's repr rather than an empty string / omitted field. The tester worked around it by retrying with empty adapters cleared.

This is in the workflow-invocation input construction (the `galaxy_invoke_workflow` payload mapping): when a step input is connected but has no literal value, we pass the placeholder object through as a string. Empty/optional params should be omitted or sent empty, not stringified.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.