Skip to content

Y25-016-scrna-submission-pooling-plan#5525

Open
BenTopping wants to merge 13 commits intodevelopfrom
Y25-016-scrna-submission-pooling-plan
Open

Y25-016-scrna-submission-pooling-plan#5525
BenTopping wants to merge 13 commits intodevelopfrom
Y25-016-scrna-submission-pooling-plan

Conversation

@BenTopping
Copy link
Contributor

@BenTopping BenTopping commented Feb 6, 2026

Closes #5524

Changes proposed in this pull request

  • Adds scrna core cdna pooling plan download link to submission show page.
  • Adds ScrnaCoreCdnaPrepPoolingPlanGenerator for pooling plan csv content generation

Notes

I have tested this against the int suite and confirmed the proposed pooling plan matches the actual pooling seen in LRC PBMC Pools 'Pooling information' section.

I think the next best test will be testing on Training and comparing real test submissions against with the real pooling information as it is difficult to simulate production runs.

TODO: Update confluence with additional pooling generator content.

@BenTopping BenTopping marked this pull request as draft February 6, 2026 11:30
@codecov
Copy link

codecov bot commented Feb 6, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 87.42%. Comparing base (8fc8826) to head (42b8ad1).
⚠️ Report is 66 commits behind head on develop.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #5525      +/-   ##
===========================================
+ Coverage    87.36%   87.42%   +0.05%     
===========================================
  Files         1463     1464       +1     
  Lines        33005    33293     +288     
  Branches      3467     3524      +57     
===========================================
+ Hits         28834    29105     +271     
- Misses        4150     4167      +17     
  Partials        21       21              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

end

# Groups the requests associated with a submission by study and project.
def self.grouped_requests(submission)
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think requests and labware and synonymous as far as the grouping is concerned at this point. Favoured requests over labware as the study/project data is derived from the submisison rather than related aliquots.

Copy link
Member

Choose a reason for hiding this comment

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

There is a request on each well. This method groups requests, hence wells because of request.asset, by "#{study} / #{project}".

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Saying this I have realised if they set number_of_lanes in submission to 2 this logic will not work as the submission will have double requests...

But I am not sure if they can / should do this for scRNA, it seemed to break the int suite setup I had. Maybe one for @KatyTaylor or the SSRs?

Copy link
Contributor Author

@BenTopping BenTopping Feb 11, 2026

Choose a reason for hiding this comment

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

I have added a uniqueness on assets in case multiple lanes are requested. Changes in fc5e0a6

@BenTopping BenTopping marked this pull request as ready for review February 11, 2026 11:26
end

def scrna_core_cdna_prep_gem_x_5p_submission?
orders.first.template_name == SCRNA_CORE_CDNA_PREP_GEM_X_5P
Copy link
Contributor

@KatyTaylor KatyTaylor Feb 12, 2026

Choose a reason for hiding this comment

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

Ah good find, I didn't know the template name was saved. Might be slightly more robust to check if any of the request types in the submission are the correct type... in case in future the cdna prep request type is chained together with another in a different template. But that could break too if the request type changes.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes good point. I'm worried if we try support future submissions based off request type the logic might not hold up as we are basing this off the requests which might not work if the prep gem x 5p is not the first/primary request type.

'This submission does not have the correct template for downloading a scRNA Core cDNA pooling plan'
redirect_to submission
return
end
Copy link
Contributor

Choose a reason for hiding this comment

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

This is just being cautious, right, because the button shouldn't display in this case?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes thats right. We have a unique URL that the button invokes so in theory it could be invoked by any submission so we are just guarding against it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Y25-016 - Display proposed pooling plan from successful scRNA Core cDNA Prep pipeline bulk submission

4 participants