Duo's second member can be a sibling #1861 - #1863
Open
davmlaw wants to merge 1 commit into
Open
Conversation
The Duo now covers both kinds of pair a lab sees: proband + parent, and two siblings. Duo.parent becomes Duo.relative (parent_affected -> relative_affected) and DuoRelationship gains Sibling. A sibling pair carries no parental transmission, so: - recessive / X-linked recessive ask an affected sibling for the proband's own HOM_ALT and an unaffected one for anything short of it - dominant's affected/unaffected formula already is the sibling rule, so the "requires an affected parent" check only applies to a parent duo - all recessive keeps the XLR branch for anything but the father - compound het collapses to one unphased branch and warns the hits may be in cis - absent in parent and mosaic parent raise an inheritance error The node editor's zygosity table is keyed on the plainest name that still tells its rows apart, with a _<relationship> and/or _affected suffix only where the mode reads differently. The wizard offers Sibling to either sex and ticks its affected box, and node-icon-duo gained a sibling half.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
#1861 asks for the Duo to cover the two kinds of pair a lab sees: parent + child, and two siblings (usually both affected). Rather than a second family model and node, the Duo gains a third
relationship.Data
Duo.parent→Duo.relative,parent_affected→relative_affected, andDuoRelationshipgainsSibling. Migrationsnpdb/migrations/0262_duo_sibling.pyis twoRenameFields plus the choices change - existing rows are all Mother/Father and need no backfill.Zygosity rules
R= relative,P= proband. The parent columns are today's behaviour, unchanged. "not HOM_ALT" is{HET, HOM_REF, MISSING}, the Quad's unaffected-sibling set.Notes:
QuadCompHet).ignore_field_errorsstill lets a user run them.UI
The node editor's zygosity table is keyed on the plainest name that still tells its rows apart -
relative, with a_<relationship>and/or_affected/_unaffectedsuffix only where the mode reads differently - and the editor'slookup()tries those in the same order. The wizard offers Sibling to either sex and ticks that sample's affected box when picked, andnode-icon-duogained a sibling half (sibship bar, proband beside an overlapped square and circle) shown by.duo-sibling.Testing
analysis/tests/test_duo_node.py(60 tests, 13 new for the sibling duo), the wizard form/view tests, andsnpdb.tests.test_urlsrenders the view page for a sibling duo. Full suite: 3244 tests, OK.Deploy
manage.py migrate- the rename has not been run anywhere yet.🤖 Generated with Claude Code
https://claude.ai/code/session_018pFmKeAyS7Fu5mbpAMqKT2