-
Notifications
You must be signed in to change notification settings - Fork 8
feat: configure active workflows with stepper inputs #662
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
will this supersede #570?? |
|
I suppose that can happen at any point since the workflows we're updating there aren't active |
85fa197 to
ecbfbbb
Compare
I don't know how to properly assign the pools. Are those separate run accessions ? Similar issue with the single cell CMO workflow that requires two PE collection inputs, not sure how that is deposited and retrieved from SRA / ENA.
we might not need fastq data
7034332 to
ec0b097
Compare
ec0b097 to
9dc1bea
Compare
9dc1bea to
d699255
Compare
|
This should be a nice enhancement. Not sure that the single / paired split for the ENA config is the best way to go about it. We'll have to eventually pass in props for organism, read type (short read vs long read), single-paired etc. that should control the default api filters we're using, so maybe passing along some kind of config object is a better idea. |
|
holy guacamole batman! hold please.. i need to go grab my thinking cap and put on some much higher energy music for this 😂 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
a huge improvement! seriously, thanks @mvdbeek 🦸
Not sure that the single / paired split for the ENA config is the best way to go about it. We'll have to eventually pass in props for organism, read type (short read vs long read), single-paired etc. that should control the default api filters we're using, so maybe passing along some kind of config object is a better idea.
i agree, but think all we need to do about it right now is file an issue and reference it here.
| geneModelUrl?: string | null; | ||
| readRuns?: EnaPairedReads[] | null; | ||
| readRunsPaired?: EnaPairedReads[] | null; | ||
| readRunsSingle?: EnaPairedReads[] | null; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is EnaPairedReads actually specific to paired reads then? it seems like we either need something else here for readRunsSingle, or we should renmame EnaPairedReads ??
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wanted to limit the refactoring here, but you're right the interface is only
export interface EnaPairedReads {
md5Hashes: string;
runAccession: string;
urls: string;
}
which is generic enough for single and paired reads. I'll rename it to EnaSequencingReads
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done in 44d068f
| } | ||
|
|
||
| // Narrow type specific to the one kind of collection we use -- might be worth defining a more general collection type if we need other kinds of collections | ||
| // Narrow type specific to the two kinds of collections we use -- might be worth defining a more general collection type if we need other kinds of collections |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the relationship between these two things could be clarified. meaning, a lot of places were using single vs paired language but not here, and technically the paired one is also a list no? it leaves the names of the interfaces alone slightly confusing, until you think about it from galaxy perspective instead of just the context of this pr. i understood on my second read through, but still, even if all we do is improve the comment above.. future danielle's brain would appreciate it
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Single vs Paired only makes sense on the BRC side where we match reads to input parameters, paired is a special case of collection type. You might as well express it as list:list, where the inner list has only 2 items, forward and reverse. I think this is OK as a comment ? Or I don't know what to improve here
| import { PAPER_PROPS } from "./constants"; | ||
| import { useEffect } from "react"; | ||
| import { STEP } from "../../step"; | ||
| import { PAIRED_END_STEP } from "../../step"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this has been a lot to digest so maybe i didnt read it right, but this needs to be a bit cleverer no? or it thinks its not configured for single end workflows?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's a good catch, this is why you can't bypass the ENA step in single end workflows
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
5b57205 to
d1c346b
Compare
d1c346b to
0810f94
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @mvdbeek! I noticed that the STEP constant and LaunchStep might not be used elsewhere in the codebase. Just wanted to check if these are still needed, or if they might be leftover code debt?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎉
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! There might be some leftover code debt, and we might take a look at the UI with the "launch" button now outside of the last step (loading state looks a bit borked), but otherwise nice work!
builds on #660 and #661.
Some of these workflows don't consume fastqs or GTFs or both, so I also implemented
#652 and some of these need single end collections, so I implemented #659
closes #580, #659, #568