Skip to content

Show step/tool form for currently active step in invocation view#22144

Draft
ahmedhamidawan wants to merge 4 commits intogalaxyproject:devfrom
ahmedhamidawan:toggle_step_display_in_invocation_view
Draft

Show step/tool form for currently active step in invocation view#22144
ahmedhamidawan wants to merge 4 commits intogalaxyproject:devfrom
ahmedhamidawan:toggle_step_display_in_invocation_view

Conversation

@ahmedhamidawan
Copy link
Member

@ahmedhamidawan ahmedhamidawan commented Mar 17, 2026

When viewing an active step in the invocation graph, tool steps that have a job associated with them now show a "Tool Form" toggle button in the step card header.
Clicking it replaces the job summary with the full ToolForm pre-populated from the job's original inputs via job_id, giving users a clear view of exactly what parameters were used when the step ran — without having to navigate back to the workflow editor.

toggle_step_display_in_invocation_view_TOOL_FORM.mp4

Fixes #21086

How to test the changes?

(Select all options that apply)

  • I've included appropriate automated tests.
  • This is a refactoring of components with existing test coverage.
  • Instructions for manual testing are as follows:
    1. [add testing steps and prerequisites here if you didn't write automated tests covering all your changes]

License

  • I agree to license these and all my past contributions to the core galaxy codebase under the MIT license.

@mvdbeek
Copy link
Member

mvdbeek commented Mar 17, 2026

Clicking it replaces the job summary with the full ToolForm pre-populated from the job's original inputs via job_id, giving users a clear view of exactly what parameters were used when the step ran

This is pretty cool, maybe call it "Rerun Job" though ? We don't really refer to tool form anywhere in the interface ?
Is the code actually included in the PR ? (A separate PR might be better)

Fixes #21086

On the expanded current active step below, add a toggle to show the step form (I guess just like it shows up in the workflow editor when you click on a step). This is mainly helpful when a step has no jobs currently; we can show this instead of nothing below. Also, users will often have to go back into the editor to see a step's configuration so this will prevent them from having to do that, just show it in the same view below.

That's still missing to close #21086, i think ?

@ahmedhamidawan
Copy link
Member Author

Is the code actually included in the PR ?

Sorry, I forgot to push the actual commits last night. Pushed them now.

(A separate PR might be better)

And then I read this 🤦 . You're right, I'll pull the second change into a separate PR

That's still missing to close 21086, i think ?

Well, isn't this tool form being rendered below basically what we wanted there?

@mvdbeek
Copy link
Member

mvdbeek commented Mar 17, 2026

This is mainly helpful when a step has no jobs currently;

@ahmedhamidawan ahmedhamidawan changed the title Allow toggling between detailed (editor like) invocation view steps Show step/tool form for currently active step in invocation view Mar 17, 2026
…eters

When viewing an active step in the invocation graph, tool steps that
have a job associated with them now show a "Tool Form" toggle button
in the step card header. Clicking it replaces the job summary with
the full ToolForm pre-populated from the job's original inputs via
job_id, giving users a clear view of exactly what parameters were
used when the step ran — without having to navigate back to the
workflow editor.

The toggle is only shown when the invocation's history is the current
active history. This is required because ToolForm needs access to the
history's datasets to correctly populate data input fields; showing
it against a non-current history would result in mismatched or
unavailable dataset references.

The form resets to hidden whenever the active step changes, so each
step starts from a clean state.
@ahmedhamidawan ahmedhamidawan force-pushed the toggle_step_display_in_invocation_view branch from c030ca3 to dadb723 Compare March 17, 2026 19:35
We would still potentially have a `tool_id` at the step, so it makes sense to render that.
@ahmedhamidawan
Copy link
Member Author

I've made it so that we still render the step's form, even if there is no job id for the step (there is still possible a tool id to render the form).

@ahmedhamidawan ahmedhamidawan marked this pull request as ready for review March 17, 2026 21:18
class="invocation-tool-form pt-2"
:job_id="viewableJobId"
:history_id="props.invocation.history_id" />
<BAlert v-else show>No job information available for this step.</BAlert>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you wanted to close the issue you've referenced you'd want to render a read only version of the step config

Image

showToolForm
? 'Hide step form'
: viewableJobId
? 'View exact run parameters and rerun this step'
Copy link
Member

@mvdbeek mvdbeek Mar 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is so long and why would you say "exact" ? Noone thought this was not going to be exact until you said it 😆

Also noone knows what a step form or tool form is. Even reading the code I wouldn't know what showToolForm means since we have so many variants of it.

Suggested change
? 'View exact run parameters and rerun this step'
? 'Rerun this job'

we don't even have a way to rerun a step, that's a different thing.

</GButton>
</GButtonGroup>
<GButton
v-if="viewableToolId"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can render non-tool step configs. I'd split this up into show step config and rerun job. Which are similar but distinct things.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, would it make sense to have an additional Rerun Job button in the same header (which exists if a job id exists) and clicking it opens the job rerun view (with the tool form)?

And then otherwise, we keep this button, which says Show Step Config and it displays the step config below; with the step config being exactly what you see in the editor.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, would it make sense to have an additional Rerun Job button in the same header (which exists if a job id exists) and clicking it opens the job rerun view (with the tool form)?

Would that not be better served in the job list ? I could go either way for the rerun.

The step config is really what I'd want to see, it also includes PJAs, labels etc

Copy link
Member Author

@ahmedhamidawan ahmedhamidawan Mar 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I think let's just render the step form for every step (except inputs and maybe subworkflows?)

Copy link
Member

@dannon dannon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice idea — being able to see step config without bouncing back to the editor is a clear win.

Agreeing with mvdbeek's direction here: the step config view (what you see in the editor — parameters, PJAs, labels) is the thing to show. The full ToolForm is an execution form, so using it as a "view parameters" display risks users accidentally rerunning jobs. Splitting "view config" from "rerun" is the right call.

A couple of small things I noticed in the current diff:

  • The v-else BAlert at line 341 ("No job information available") is unreachable — showToolForm can only be true when viewableToolId is truthy (the button is guarded by v-if="viewableToolId"), so the v-else-if always wins.
  • The activeCardHeaderClass computed + z-index overrides (.tool-header, .multiselect__content-wrapper) are fighting ToolForm's internal layout. If you switch to a read-only step config view this should go away naturally.

@ahmedhamidawan
Copy link
Member Author

thank you @dannon, those are great points, I'll fix those things. Yes, a readonly step config is exactly what we need.

@ahmedhamidawan ahmedhamidawan marked this pull request as draft March 18, 2026 22:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

More improvements to Invocation View Step Displays!

3 participants