Skip to content

Conversation

@pfurio
Copy link
Member

@pfurio pfurio commented Oct 28, 2025

No description provided.

@halender
Copy link
Contributor

Task linked: TASK-7610 Extend Workflows data model

@pfurio pfurio requested a review from j-coll October 28, 2025 09:54
@DataField(id = "manager", description = FieldConstants.WORKFLOW_MANAGER_DESCRIPTION)
private WorkflowSystem manager;
@DataField(id = "scope", description = FieldConstants.EXTERNAL_TOOL_SCOPE_DESCRIPTION)
private ExternalToolScope scope;
Copy link
Member

Choose a reason for hiding this comment

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

Classic tools already have a "scope". This name is misleading, as it has a totally different meaning.
I don't even know what this scope is for 🤷 (the DataField content doesn't help either)
It's some sort of tool classification by purpose?

Copy link
Member Author

Choose a reason for hiding this comment

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

There's a data field explaining what that scope is.

public static final String EXTERNAL_TOOL_TYPE_DESCRIPTION = "External tool type. Valid values: TOOL, VARIANT_WALKER or WORKFLOW.";
public static final String EXTERNAL_TOOL_SCOPE_DESCRIPTION = "External tool scope. Valid values: SECONDARY_ANALYSIS, RESEARCH_ANALYSIS,"
+ " CLINICAL_INTERPRETATION_ANALYSIS or OTHER.";
public static final String EXTERNAL_TOOL_DRAFT_DESCRIPTION = "Flag indicating whether the external tool is a draft or not.";
Copy link
Member

Choose a reason for hiding this comment

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

Ok, cool, but what are the implications of a draft tool? Is this just informative, or has an actual meaning internally?

Copy link
Member Author

Choose a reason for hiding this comment

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

Tools that are not intended to be published/used yet are marked as "draft", but that's up to you whether you want to trust that or not. We are not restricting anything

protected String getStudyFqn() throws CatalogException {
String study = StringUtils.isNotEmpty(this.study) ? this.study : getParams().getString(ParamConstants.STUDY_PARAM);
if (StringUtils.isEmpty(study)) {
return "";
Copy link
Member

Choose a reason for hiding this comment

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

if empty, would not call catalog to see if there is any default study? Shouldn't fail if empty? This is different behaviour than the "OpenCgaToolScopeStudy"

Copy link
Member Author

Choose a reason for hiding this comment

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

I can't think of a case where that will be empty, but if it is, calls to anything in OpenCGA will use an empty study and should return something either way if there's only one study

@Migration(id = "remove_status_name", description = "Remove status name #TASK-5964", version = "3.2.0",
language = Migration.MigrationLanguage.JAVA, domain = Migration.MigrationDomain.CATALOG, date = 20240612)
language = Migration.MigrationLanguage.JAVA, domain = Migration.MigrationDomain.CATALOG, date = 20240612,
deprecatedSince = "4.0.0")
Copy link
Member

Choose a reason for hiding this comment

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

hummm... actually, deprecatedSince 5.0.0, right?

Copy link
Member

Choose a reason for hiding this comment

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

There are a few other migrations with the wrong deprecatiedSince

@pfurio pfurio requested a review from j-coll December 1, 2025 15:23
j-coll
j-coll previously approved these changes Dec 5, 2025
j-coll
j-coll previously approved these changes Dec 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants