Skip to content

👌 IMPROVE: Set default extras for FromGroupSubmissionController #5

@mbercx

Description

@mbercx

Problem description

The current implementation of the submission controller relies on extras in the parent_group that uniquely define each node. This means that in order to use the submission controller, there is always some management of these extras involved. This means that in case e.g. new nodes are added to the parent_group, one must make sure that these extras aren't forgotten, adding extra overhead.

Desired change

I think we should consider having a default approach where the UUID of the node in the parent_group is used to check which nodes have already been submitted. This will require a bit of tweaking of the get_process_extra_projections and get_extra_unique_keys in the FromGroupSubmissionController class. Perhaps the latter method will return a reserved key, e.g. _parent_uuid, which means the former will return a projection that grabs the UUID instead of anything from the extras.

Other considerations

One thing that's definitely nice about the extras is that they are passed on in case the submitted work chains are then in turn inputs for a next submission controller. So it's very easy and fast to connect these different runs, especially if you branch at some point in your submission workflow. One way to preserve this would be to assign an _ancestor_uuid instead. If this key isn't present in the extras of the node in the parent_group, it is generated from the actual UUID of the node. Else it is just passed on.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions