Problem
The LOINC OID 2.16.840.1.113883.6.1 (and SNOMED/LOINC URIs) are hardcoded in multiple places that must stay in sync:
Proposed scope
- Add a small constants module (e.g.
shared_models.code_systems with LOINC_OID, LOINC_URI, SNOMED_OID, SNOMED_URI, names) since both augmentation and text-to-code already depend on shared-models.
- Replace the hardcoded literals at the sites above with the shared constants; have
evaluator.CodeSystemValues reference them too.
Acceptance criteria
- No raw LOINC/SNOMED OID string literals remain in the listed files;
rg '113883\.6\.1' across packages/ resolves to the single constants module. Existing tests still pass.
Problem
The LOINC OID
2.16.840.1.113883.6.1(and SNOMED/LOINC URIs) are hardcoded in multiple places that must stay in sync:packages/augmentation/.../eicr_augmenter.py:283(translationcodeSystem)packages/text-to-code-lambda/.../lambda_function.py:397(newCode.code_system)packages/text-to-code/.../models/evaluator.py—CodeSystemValuesplus duplicated inline literals acrossLabTestNameOrdered*/LabTestNameResulted*criteria.Proposed scope
shared_models.code_systemswithLOINC_OID,LOINC_URI,SNOMED_OID,SNOMED_URI, names) since bothaugmentationandtext-to-codealready depend onshared-models.evaluator.CodeSystemValuesreference them too.Acceptance criteria
rg '113883\.6\.1'acrosspackages/resolves to the single constants module. Existing tests still pass.