Anthony-Nolan / Atlas

A free & open-source Donor Search Algorithm Service
GNU General Public License v3.0
9 stars 5 forks source link

Regenerate the HMD to incorporate changes to TCE group file #1050

Closed zabeen closed 1 year ago

zabeen commented 1 year ago

The TCE group file in v3.53.0 of the IMGT/HLA db has been fixed - version 3530 of the HMD needs to be regenerated to incorporate these changes, by running RefreshHlaMetadataDictionaryToSpecificVersion on the matching algorithm functions app, and then UpdateHlaMetadataDictionaryCache to update the caches. (Changes to scoring results may not be observed until the scoring app cache expires the following day, unless the matching app is restarted)

Note: data refresh job does not need to be re-run as TCE group is not used in matching, and so is not used when pre-processing donor HLA (which is the goal of the data refresh job).

zabeen commented 1 year ago

Instances to update:

Check: 1) Run ScoreBatch request on matching algorithm functions app:

{
    "donorsHla": [
        {
            "donorId": "PermissiveMismatch",
            "A": {
                "Position1": "*01:EEWTG",
                "Position2": "*26:EEPDZ"
            },
            "B": {
                "Position1": "*08:CMVFZ",
                "Position2": "*56:BZDVM"
            },
            "C": {
                "Position1": "*01:CEJWT",
                "Position2": "*07:EEPCD"
            },
            "Dpb1": {
                "Position1": "*01:CMVHN",
                "Position2": "*04:CMVHV"
            },
            "Dqb1": {
                "Position1": "*02:CMVJA",
                "Position2": "*03:CMVJE"
            },
            "Drb1": {
                "Position1": "*03:CEKCG",
                "Position2": "*04:CEKCJ"
            }
        },
        {
            "donorId": "NonPermissiveHvGMismatch",
            "A": {
                "Position1": "*01:01:01G",
                "Position2": "*26:01:01G"
            },
            "B": {
                "Position1": "*08:01:01G",
                "Position2": "*56:01:01G"
            },
            "C": {
                "Position1": "*01:02:01G",
                "Position2": "*07:01:01G"
            },
            "Dpb1": {
                "Position1": "*01:01:01G",
                "Position2": "*10:01:01"
            },
            "Dqb1": {
                "Position1": "*02:01:01G",
                "Position2": "*03:02:01G"
            },
            "Drb1": {
                "Position1": "*03:01:01G",
                "Position2": "*04:01:01"
            }
        }
    ],
    "patientHla": {
        "A": {
            "Position1": "*01:01",
            "Position2": "*26:01"
        },
        "B": {
            "Position1": "*08:01",
            "Position2": "*56:01"
        },
        "C": {
            "Position1": "*01:02",
            "Position2": "*07:01"
        },
        "Dpb1": {
            "Position1": "*04:01",
            "Position2": "*04:01"
        },
        "Dqb1": {
            "Position1": "*02:01",
            "Position2": "*03:02"
        },
        "Drb1": {
            "Position1": "*03:01",
            "Position2": "*04:01"
        }
    },
    "scoringCriteria": {
        "lociToScore": [
            "Dpb1"
        ],
        "lociToExcludeFromAggregateScore": []
    }
}

2) Dpb1 scores should be PermissiveMismatch and NonPermissiveHvG.

zabeen commented 1 year ago

Response observed:

[
    {
        "donorId": "PermissiveMismatch",
        "scoringResult": {
            "totalMatchCount": 0,
            "potentialMatchCount": 0,
            "exactMatchCount": 0,
            "typedLociCount": 1,
            "gradeScore": 0,
            "confidenceScore": 0,
            "overallMatchConfidence": "Mismatch",
            "matchCategory": "PermissiveMismatch",
            "searchResultAtLocusA": null,
            "searchResultAtLocusB": null,
            "searchResultAtLocusC": null,
            "searchResultAtLocusDpb1": {
                "isLocusMatchCountIncludedInTotal": true,
                "matchCategory": "PermissiveMismatch",
                "matchCount": 0,
                "isLocusTyped": true,
                "matchGradeScore": 0,
                "matchConfidenceScore": 0,
                "scoreDetailsAtPositionOne": {
                    "matchConfidence": "Mismatch",
                    "matchConfidenceScore": 0,
                    "matchGrade": "Mismatch",
                    "matchGradeScore": 0,
                    "isAntigenMatch": null
                },
                "scoreDetailsAtPositionTwo": {
                    "matchConfidence": "Mismatch",
                    "matchConfidenceScore": 0,
                    "matchGrade": "Mismatch",
                    "matchGradeScore": 0,
                    "isAntigenMatch": null
                },
                "mismatchDirection": "NotApplicable"
            },
            "searchResultAtLocusDqb1": null,
            "searchResultAtLocusDrb1": null
        }
    },
    {
        "donorId": "NonPermissiveHvGMismatch",
        "scoringResult": {
            "totalMatchCount": 0,
            "potentialMatchCount": 0,
            "exactMatchCount": 0,
            "typedLociCount": 1,
            "gradeScore": 0,
            "confidenceScore": 0,
            "overallMatchConfidence": "Mismatch",
            "matchCategory": "Mismatch",
            "searchResultAtLocusA": null,
            "searchResultAtLocusB": null,
            "searchResultAtLocusC": null,
            "searchResultAtLocusDpb1": {
                "isLocusMatchCountIncludedInTotal": true,
                "matchCategory": "Mismatch",
                "matchCount": 0,
                "isLocusTyped": true,
                "matchGradeScore": 0,
                "matchConfidenceScore": 0,
                "scoreDetailsAtPositionOne": {
                    "matchConfidence": "Mismatch",
                    "matchConfidenceScore": 0,
                    "matchGrade": "Mismatch",
                    "matchGradeScore": 0,
                    "isAntigenMatch": null
                },
                "scoreDetailsAtPositionTwo": {
                    "matchConfidence": "Mismatch",
                    "matchConfidenceScore": 0,
                    "matchGrade": "Mismatch",
                    "matchGradeScore": 0,
                    "isAntigenMatch": null
                },
                "mismatchDirection": "NonPermissiveHvG"
            },
            "searchResultAtLocusDqb1": null,
            "searchResultAtLocusDrb1": null
        }
    }
]