Skip to content
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

Fix #4909 - Tavtigian Bayesian point sums #4920

Open
wants to merge 21 commits into
base: main
Choose a base branch
from
Open

Conversation

dnil
Copy link
Collaborator

@dnil dnil commented Oct 8, 2024

This PR adds a functionality: Bayesian point sums for an alternative ACMG classification, and temperature for VUS.

Screenshot 2024-10-08 at 21 29 13

Ok! I will brush up the visuals and add some tests, but kinda looks promising! 🌶️

Testing on cg-vm1 server (Clinical Genomics Stockholm)

Prepare for testing

  1. Make sure the PR is pushed and available on Docker Hub
  2. Fist book your testing time using the Pax software available at https://pax.scilifelab.se/. The resource you are going to call dibs on is scout-stage and the server is cg-vm1.
  3. ssh <USER.NAME>@cg-vm1.scilifelab.se
  4. sudo -iu hiseq.clinical
  5. ssh localhost
  6. (optional) Find out which scout branch is currently deployed on cg-vm1: podman ps
  7. Stop the service with current deployed branch: systemctl --user stop scout.target
  8. Start the scout service with the branch to test: systemctl --user start scout@<this_branch>
  9. Make sure the branch is deployed: systemctl --user status scout.target
  10. After testing is done, repeat procedure at https://pax.scilifelab.se/, which will release the allocated resource (scout-stage) to be used for testing by other users.
Testing on hasta server (Clinical Genomics Stockholm)

Prepare for testing

  1. ssh <USER.NAME>@hasta.scilifelab.se
  2. Book your testing time using the Pax software. us; paxa -u <user> -s hasta -r scout-stage. You can also use the WSGI Pax app available at https://pax.scilifelab.se/.
  3. (optional) Find out which scout branch is currently deployed on cg-vm1: conda activate S_scout; pip freeze | grep scout-browser
  4. Deploy the branch to test: bash /home/proj/production/servers/resources/hasta.scilifelab.se/update-tool-stage.sh -e S_scout -t scout -b <this_branch>
  5. Make sure the branch is deployed: us; scout --version
  6. After testing is done, repeat the paxa procedure, which will release the allocated resource (scout-stage) to be used for testing by other users.

How to test:

  1. how to test it, possibly with real cases/data

Expected outcome:
The functionality should be working
Take a screenshot and attach or copy/paste the output.

Review:

  • code approved by
  • tests executed by

@dnil dnil marked this pull request as draft October 8, 2024 16:17
Copy link

codecov bot commented Oct 8, 2024

Codecov Report

Attention: Patch coverage is 73.17073% with 11 lines in your changes missing coverage. Please review.

Project coverage is 84.78%. Comparing base (84d7905) to head (88d7fb1).
Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
scout/utils/acmg.py 71.05% 11 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4920      +/-   ##
==========================================
- Coverage   84.80%   84.78%   -0.03%     
==========================================
  Files         320      320              
  Lines       19335    19370      +35     
==========================================
+ Hits        16397    16422      +25     
- Misses       2938     2948      +10     

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

@@ -112,15 +114,6 @@ <h4>Evidence of {{ category }}</h4>
</div>
{% endblock %}

{% macro preview() %}
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

unused...

@dnil
Copy link
Collaborator Author

dnil commented Oct 9, 2024

Ok, beginning to like the style; let's see what you think!
Screenshot 2024-10-09 at 10 49 47
Ahem, yes, test.

@dnil
Copy link
Collaborator Author

dnil commented Oct 10, 2024

Ok, added tests, and "end states" outside VUS for P/LP and B/LB.
Screenshot 2024-10-10 at 10 04 21
Screenshot 2024-10-10 at 10 01 12
Screenshot 2024-10-10 at 10 01 07
Screenshot 2024-10-10 at 10 08 28
Screenshot 2024-10-10 at 10 00 53
Screenshot 2024-10-10 at 10 00 47
Screenshot 2024-10-10 at 10 00 38
Screenshot 2024-10-10 at 10 00 30
Screenshot 2024-10-10 at 10 05 19
Screenshot 2024-10-10 at 10 01 22

@dnil dnil marked this pull request as ready for review October 10, 2024 08:11
prediction(str): in ['uncertain_significance','benign','likely_benign',
'likely_pathogenic','pathogenic']
def get_acmg_criteria(acmg_terms: set) -> tuple:
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Refactored slightly to have one function to sort the terms, that can be reused by both the Richards and the Tavtigian classifier.

* Fix #4906 - warn on potentially conflicting ACMG terms.

* add a tuple, sort, and simplify slightly

* add test

* typo

* Update scout/constants/acmg.py

Co-authored-by: Chiara Rasi <rasi.chiara@gmail.com>

* Update scout/utils/acmg.py

Co-authored-by: Chiara Rasi <rasi.chiara@gmail.com>

---------

Co-authored-by: Chiara Rasi <rasi.chiara@gmail.com>
Copy link

sonarcloud bot commented Oct 11, 2024

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

Successfully merging this pull request may close these issues.

ACMG VUS ice cold - tepid - hot scale
3 participants