diff --git a/backend/app/schemas/acmgseqvar.py b/backend/app/schemas/acmgseqvar.py index e26f6c33..e0d084e8 100644 --- a/backend/app/schemas/acmgseqvar.py +++ b/backend/app/schemas/acmgseqvar.py @@ -37,7 +37,6 @@ class Criteria(str, Enum): PP2 = "PP2" PP3 = "PP3" PP4 = "PP4" - PP5 = "PP5" BA1 = "BA1" BS1 = "BS1" BS2 = "BS2" @@ -48,7 +47,6 @@ class Criteria(str, Enum): BP3 = "BP3" BP4 = "BP4" BP5 = "BP5" - BP6 = "BP6" BP7 = "BP7" diff --git a/frontend/src/assets/__tests__/ExampleAcmgSeqVarRank.json b/frontend/src/assets/__tests__/ExampleAcmgSeqVarRank.json index 845d0bb4..991bc536 100644 --- a/frontend/src/assets/__tests__/ExampleAcmgSeqVarRank.json +++ b/frontend/src/assets/__tests__/ExampleAcmgSeqVarRank.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fabfab448a093134cbcc67b818bd83cccf9086d04092baa59eb16ec1436daf58 -size 3419 +oid sha256:0736ddc640684c40080cd4c0284f43336cc44dda7cf08b33573f6b5645f3e68b +size 3187 diff --git a/frontend/src/components/__tests__/SeqvarDetails/ClinsigCard.spec.ts b/frontend/src/components/__tests__/SeqvarDetails/ClinsigCard.spec.ts index d3ec0c42..d68a7571 100644 --- a/frontend/src/components/__tests__/SeqvarDetails/ClinsigCard.spec.ts +++ b/frontend/src/components/__tests__/SeqvarDetails/ClinsigCard.spec.ts @@ -61,7 +61,7 @@ describe.concurrent('AcmgRating', async () => { const summarySheet = wrapper.findComponent(SummarySheet) expect(summarySheet.exists()).toBe(true) const switchers = wrapper.findAllComponents({ name: 'CriterionSwitch' }) - expect(switchers.length).toBe(56) + expect(switchers.length).toBe(52) // click show failed button const btnShowFailed = wrapper.findAll('.show-failed') diff --git a/frontend/src/lib/__tests__/acmgSeqVar.spec.ts b/frontend/src/lib/__tests__/acmgSeqVar.spec.ts index 11c11a62..ad139553 100644 --- a/frontend/src/lib/__tests__/acmgSeqVar.spec.ts +++ b/frontend/src/lib/__tests__/acmgSeqVar.spec.ts @@ -19,19 +19,19 @@ describe.concurrent('MultiSourceAcmgCriteriaState', () => { expect(AcmgCriteriaState.criteriaStates).toHaveProperty(StateSource.User) // Check keys of AcmgCriteriaState.criteriaStates[StateSource.Default] - expect(Object.keys(AcmgCriteriaState.criteriaStates[StateSource.Default]).length).toEqual(28) + expect(Object.keys(AcmgCriteriaState.criteriaStates[StateSource.Default]).length).toEqual(26) expect(AcmgCriteriaState.criteriaStates[StateSource.Default]).toHaveProperty(AcmgCriteria.PVS1) // Check keys of AcmgCriteriaState.criteriaStates[StateSource.InterVar] - expect(Object.keys(AcmgCriteriaState.criteriaStates[StateSource.InterVar]).length).toEqual(28) + expect(Object.keys(AcmgCriteriaState.criteriaStates[StateSource.InterVar]).length).toEqual(26) expect(AcmgCriteriaState.criteriaStates[StateSource.InterVar]).toHaveProperty(AcmgCriteria.PVS1) // Check keys of AcmgCriteriaState.criteriaStates[StateSource.Server] - expect(Object.keys(AcmgCriteriaState.criteriaStates[StateSource.Server]).length).toEqual(28) + expect(Object.keys(AcmgCriteriaState.criteriaStates[StateSource.Server]).length).toEqual(26) expect(AcmgCriteriaState.criteriaStates[StateSource.Server]).toHaveProperty(AcmgCriteria.PVS1) // Check keys of AcmgCriteriaState.criteriaStates[StateSource.User] - expect(Object.keys(AcmgCriteriaState.criteriaStates[StateSource.User]).length).toEqual(28) + expect(Object.keys(AcmgCriteriaState.criteriaStates[StateSource.User]).length).toEqual(26) expect(AcmgCriteriaState.criteriaStates[StateSource.User]).toHaveProperty(AcmgCriteria.PVS1) }) @@ -319,19 +319,19 @@ describe.concurrent('MultiSourceAcmgCriteriaState', () => { expect(criteriaStates).toHaveProperty(StateSource.User) // Check keys of AcmgCriteriaState.criteriaStates[StateSource.Default] - expect(Object.keys(criteriaStates[StateSource.Default]).length).toEqual(28) + expect(Object.keys(criteriaStates[StateSource.Default]).length).toEqual(26) expect(criteriaStates[StateSource.Default]).toHaveProperty(AcmgCriteria.PVS1) // Check keys of AcmgCriteriaState.criteriaStates[StateSource.InterVar] - expect(Object.keys(criteriaStates[StateSource.InterVar]).length).toEqual(28) + expect(Object.keys(criteriaStates[StateSource.InterVar]).length).toEqual(26) expect(criteriaStates[StateSource.InterVar]).toHaveProperty(AcmgCriteria.PVS1) // Check keys of AcmgCriteriaState.criteriaStates[StateSource.Server] - expect(Object.keys(criteriaStates[StateSource.Server]).length).toEqual(28) + expect(Object.keys(criteriaStates[StateSource.Server]).length).toEqual(26) expect(criteriaStates[StateSource.Server]).toHaveProperty(AcmgCriteria.PVS1) // Check keys of AcmgCriteriaState.criteriaStates[StateSource.User] - expect(Object.keys(criteriaStates[StateSource.User]).length).toEqual(28) + expect(Object.keys(criteriaStates[StateSource.User]).length).toEqual(26) expect(criteriaStates[StateSource.User]).toHaveProperty(AcmgCriteria.PVS1) }) diff --git a/frontend/src/lib/acmgSeqVar.ts b/frontend/src/lib/acmgSeqVar.ts index f173528e..c112e466 100644 --- a/frontend/src/lib/acmgSeqVar.ts +++ b/frontend/src/lib/acmgSeqVar.ts @@ -42,7 +42,6 @@ enum AcmgCriteria { PP2 = 'PP2', PP3 = 'PP3', PP4 = 'PP4', - PP5 = 'PP5', BA1 = 'BA1', BS1 = 'BS1', BS2 = 'BS2', @@ -53,7 +52,6 @@ enum AcmgCriteria { BP3 = 'BP3', BP4 = 'BP4', BP5 = 'BP5', - BP6 = 'BP6', BP7 = 'BP7' } @@ -74,7 +72,6 @@ const ALL_ACMG_CRITERIA = [ AcmgCriteria.PP2, AcmgCriteria.PP3, AcmgCriteria.PP4, - AcmgCriteria.PP5, AcmgCriteria.BA1, AcmgCriteria.BS1, AcmgCriteria.BS2, @@ -85,7 +82,6 @@ const ALL_ACMG_CRITERIA = [ AcmgCriteria.BP3, AcmgCriteria.BP4, AcmgCriteria.BP5, - AcmgCriteria.BP6, AcmgCriteria.BP7 ] @@ -224,15 +220,6 @@ const ACMG_CRITERIA_DEFS: Map = new Map( description: `Patient's phenotype or family history is highly specific for a disease with a single genetic etiology.` }, - { - criteria: AcmgCriteria.PP5, - defaultEvidenceLevel: AcmgEvidenceLevel.PathogenicSupporting, - label: 'PP5', - hint: 'reliable source: pathogenic', - description: `Reputable source recently reports variant as pathogenic, but the evidence is not available - to the laboratoryto perform an independent evaluation. Note: Not recommended to use anymore, - use PS3 and PS4 at different levels of evidence.` - }, { criteria: AcmgCriteria.BA1, defaultEvidenceLevel: AcmgEvidenceLevel.BenignStandalone, @@ -309,14 +296,6 @@ const ACMG_CRITERIA_DEFS: Map = new Map( hint: 'different gene in other case', description: 'Variant found in a case with an alternate molecular basis for disease' }, - { - criteria: AcmgCriteria.BP6, - defaultEvidenceLevel: AcmgEvidenceLevel.BenignSupporting, - label: 'BP6', - hint: 'reputable source: benign', - description: - 'Reputable source recently reports variant as benign, but the evidence is not available to the laboratory to perform an independent evaluation' - }, { criteria: AcmgCriteria.BP7, defaultEvidenceLevel: AcmgEvidenceLevel.BenignSupporting, @@ -470,11 +449,6 @@ class MultiSourceAcmgCriteriaState { presence: Presence.Unknown, evidenceLevel: isDefault ? AcmgEvidenceLevel.PathogenicSupporting : AcmgEvidenceLevel.NotSet }, - PP5: { - criteria: AcmgCriteria.PP5, - presence: Presence.Unknown, - evidenceLevel: isDefault ? AcmgEvidenceLevel.PathogenicSupporting : AcmgEvidenceLevel.NotSet - }, BA1: { criteria: AcmgCriteria.BA1, presence: Presence.Unknown, @@ -525,11 +499,6 @@ class MultiSourceAcmgCriteriaState { presence: Presence.Unknown, evidenceLevel: isDefault ? AcmgEvidenceLevel.BenignSupporting : AcmgEvidenceLevel.NotSet }, - BP6: { - criteria: AcmgCriteria.BP6, - presence: Presence.Unknown, - evidenceLevel: isDefault ? AcmgEvidenceLevel.BenignSupporting : AcmgEvidenceLevel.NotSet - }, BP7: { criteria: AcmgCriteria.BP7, presence: Presence.Unknown, diff --git a/frontend/src/stores/__tests__/variantAcmgRating.spec.ts b/frontend/src/stores/__tests__/variantAcmgRating.spec.ts index abdcd03b..a081f9f7 100644 --- a/frontend/src/stores/__tests__/variantAcmgRating.spec.ts +++ b/frontend/src/stores/__tests__/variantAcmgRating.spec.ts @@ -37,7 +37,6 @@ const ExampleInterVarResponse = { pp2: false, pp3: false, pp4: false, - pp5: false, ba1: false, bs1: false, bs2: false, @@ -48,7 +47,6 @@ const ExampleInterVarResponse = { bp3: false, bp4: false, bp5: false, - bp6: false, bp7: false } diff --git a/frontend/src/stores/seqVarAcmgRating.ts b/frontend/src/stores/seqVarAcmgRating.ts index eb6b3ed7..21af899e 100644 --- a/frontend/src/stores/seqVarAcmgRating.ts +++ b/frontend/src/stores/seqVarAcmgRating.ts @@ -110,6 +110,10 @@ export const useSeqVarAcmgRatingStore = defineStore('seqVarAcmgRating', () => { const acmgRatingInterVarData = await response.json() // Go through the data and setPresense for each criteria for (const [criteriaId, value] of Object.entries(acmgRatingInterVarData)) { + // Skip pp5 and bp6 criteria as they are not used anymore + if (criteriaId === 'pp5' || criteriaId === 'bp6') { + continue + } const criteriaIdKey = criteriaId.toUpperCase() as keyof typeof AcmgCriteria if (value === true) { acmgRating.value.setPresence( @@ -142,7 +146,6 @@ export const useSeqVarAcmgRatingStore = defineStore('seqVarAcmgRating', () => { const acmgRatingBackend = await acmgSeqVarClient.fetchAcmgRating( seqvar$.chrom + ':' + seqvar$.pos + ':' + seqvar$.del + ':' + seqvar$.ins ) - console.log(acmgRatingBackend) if (acmgRatingBackend.acmg_rank?.criterias) { acmgRatingStatus.value = true // Go through the data and setPresense for each criteria diff --git a/frontend/src/views/ACMGCriteriaDocs.vue b/frontend/src/views/ACMGCriteriaDocs.vue index 45661d6d..51e23653 100644 --- a/frontend/src/views/ACMGCriteriaDocs.vue +++ b/frontend/src/views/ACMGCriteriaDocs.vue @@ -149,16 +149,6 @@ const mainBackgroundColor = computed(() => {

Hint: Phenotype/pedigree match gene

-
  • -

    PP5 - Reputable source reports variant as pathogenic

    -

    - Description: Reputable source recently reports variant as pathogenic, but the - evidence is not available to the laboratory to perform an independent evaluation. - Note: Not recommended to use anymore, use PS3 and PS4 at different levels of - evidence. -

    -

    Hint: Reliable source: pathogenic

    -
  • @@ -241,14 +231,6 @@ const mainBackgroundColor = computed(() => {

    Hint: Different gene in other case

    -
  • -

    BP6 - Reputable source reports variant as benign

    -

    - Description: Reputable source recently reports variant as benign, but the evidence - is not available to the laboratory to perform an independent evaluation -

    -

    Hint: Reputable source: benign

    -
  • BP7 - Synonymous variant with no splicing impact

    diff --git a/frontend/src/views/__tests__/ACMGCriteriaDoc.spec.ts b/frontend/src/views/__tests__/ACMGCriteriaDoc.spec.ts index 3debbe1f..fa6d62bb 100644 --- a/frontend/src/views/__tests__/ACMGCriteriaDoc.spec.ts +++ b/frontend/src/views/__tests__/ACMGCriteriaDoc.spec.ts @@ -40,6 +40,6 @@ describe.concurrent('ACMGCriteriaDocs', async () => { expect(mainContent.exists()).toBe(true) expect(mainContent.html()).toMatch('PVS1') expect(mainContent.html()).toMatch('Benign Criteria') - expect(mainContent.html()).toMatch('BP6') + expect(mainContent.html()).toMatch('BP1') }) })