argoproj / argoproj/argo-workflows
UI: Set a description on Input artifacts and show it in the Submit UI
- Dominant language
- Go
- Stars
- 17k
- Forks
- 3.7k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 138
Description
# Summary
Workflow input parameters can define a `description`, but input artifacts do not have an equivalent field.
When users upload artifacts through the WorkflowTemplate submission UI, the artifact name alone may not provide enough information to identify the expected file format or purpose.
Add an optional `description` field to the common `Artifact` API and display it as a tooltip next to the artifact name in the submission UI.
For example:
```yaml
spec:
arguments:
artifacts:
- name: input-data
description: Upload a UTF-8 encoded CSV file with a header row.
```
The expected behavior is:
- `Artifact` supports an optional `description`.
- The description is preserved through API serialization, CRDs, and WorkflowTemplate merging.
- The submission UI displays a tooltip for artifacts with a description.
- No tooltip is displayed when the description is omitted or empty.
- The description is informational only and does not affect artifact uploads or workflow execution.
Because `Artifact` is a common API type, the design should not be limited to WorkflowTemplate and should also support resources that use the same type, such as ClusterWorkflowTemplate.
## Use Cases
This is useful when non-developers submit WorkflowTemplates through the UI.
Artifact descriptions can communicate:
- Expected formats such as CSV, ZIP, or JSON
- Constraints such as character encoding, maximum size, or required columns
- The purpose of each artifact when multiple input artifacts are required
- Usage guidance for shared WorkflowTemplates and ClusterWorkflowTemplates
Users should be able to select the correct file from the submission UI without inspecting the WorkflowTemplate implementation or separate documentation.
---
**Message from the maintainers**:
Love this feature request? Give it a 👍. We prioritise the proposals with the most 👍.
Contributor guide
Research direction
Start at the common Artifact API and trace its serialization, CRD generation, and WorkflowTemplate merging paths, then inspect the submission UI entry point for artifact inputs. Done means descriptions survive API and CRD handling, appear as tooltips when non-empty, and are omitted when absent or empty without changing upload or execution behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- api, full-stack
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100