-
Notifications
You must be signed in to change notification settings - Fork 18
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
[Read_Screen] skip_screen actually skips the screen #699
Conversation
…nces of skip_screen
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.
Code changes being driven by the fact that before hand, the boolean for skip screen was nested within the screen task which lead to undesired behavior. The new changes follow a consistent pattern of defaulting to running the screen task. When skip_screen is set to true, the task will be skipped on the workflow level and subsequent outputs have been made optional and will be blank. This change makes skip_screen more transparent on the workflow level and easier to track, while changing the screen task to be it's most functional form without the need to spin up a VM and determine if the task itself should be skipped or not.
TheiaCoV_Illumina_PE with screen || TheiaCoV_Illumina PE with screen skipped Confirming this change across all workflows with skip screen off and on. These tests confirm that the defaults work as expected, and when skip_screen is true, then the screening tasks is actually being skipped and the workflows complete as expected. |
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.
Reviewed and tested all updates. Good job on the restructure.
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.
Reslolved merge conflict
This PR closes #677
🗑️ This dev branch should be deleted after merging to main.
🧠 Summary
For years and years, the read_screen task was advertised as skippable, and while it theoretically did not perform any screening, the task and VM was still spun up so the task itself was not skipped. This was due to my unexperienced self not really knowing what she was doing and also it being my very first addition to the Theiagen code base all those years ago.
Because of that, I am finally fixing this terribly inadequate solution and am making an improvement wherein if the
skip_screen
variable is set to true, the read_screen task is never even run or touched, which is much improved.⚡ Impacted Workflows/Tasks
Workflows:
Tasks:
This PR may lead to different results in pre-existing outputs: Yes
Instead of the
read_screen
output variable saying PASS it will be blank, since the screen didn't run.This PR uses an element that could cause duplicate runs to have different results: No
🛠️ Changes
⚙️ Algorithm
The read screen is actually skipped instead of started and all internal processes skipped. No more needless VM creation!
!!!!!⚠️ if you're skipping the screen in theiaeuk, PLEASE provide an expected genome size or RASUSA will try to downsample to a genome size of 0 and that will make it very unhappy so... not sure how else to get around that lol
➡️ Inputs
None
⬅️ Outputs
None
🧪 Testing
Please admire the LACK of read_screen tasks in the following workflows where
skip_screen
was set to true:AND THE PRESENCE OF when
skip_screen
is blank/default false:Please note that though several of these tasks are failing, those failures are completely unrelated to this PR and are actually just due to me being a silly goose and not giving the workflow the right primer bed files or references or using bad data so all of these workflows reveal that what I did worked as intended.
Suggested Scenarios for Reviewer to Test
If you are afraid of the previous statement I made and are rightfully judgmental of my admittedly shoddy testing, you may want to rerun some of those tests that have failure marks to make them go green though I am confident they will once you give the workflow what it needs: the right primers/appropriate references/actually good data.
🔬 Final Developer Checklist
workflows_overview
tables.🎯 Reviewer Checklist