Phase 2: fix 14 wrong CURIEs in node_grounding + enforce id↔label gate#111
Merged
Conversation
Corrects the 15 id↔label MISMATCHES the validator flagged at Phase-1 adoption
(all pre-existing wrong CURIEs in mappings/node_grounding.tsv, each verified
against the OAK sqlite):
PATO:0000383(female) -> PATO:0001306 decreased temperature
PATO:0001428(medium acidity) -> PATO:0001429 acidic [acidic pH]
PATO:0001429(acidic) -> PATO:0001430 alkaline [alkaline pH]
PATO:0001432(decayed) -> PATO:0001428 medium acidity [near-neutral pH]
PATO:0001637 -> PATO:0001305 increased temperature
ENVO:01001057(plant part, x2) -> PATO:0001456 anaerobic
ENVO:01000687(coast) -> ENVO:01001040 saline environment
CHEBI:65015(paromamine) -> CHEBI:25728 osmolyte
CHEBI:33542 -> CHEBI:16094 thiosulfate(2-)
CHEBI:17499(hydrogen donor) -> CHEBI:15022 electron donor
GO:0030641(obsolete) -> GO:0051453 regulation of intracellular pH
GO:0046358(butyrate biosynth) -> GO:0030634 carbon fixation by acetyl-CoA pathway
GO:0006572 -> label fix to canonical "L-tyrosine catabolic process"
PATO:0001717 "light intensity" -> kept; conf exception (OAK canonical is the
awkward "radiation emitting intensity quality")
Re-migrated the wrong grounding: values already written into trait YAMLs
(ground_causal_nodes.py only fills empty slots): 34 causal-node groundings
across 31 files overwritten to the corrected CURIEs, matched by (label,
node_type) case-insensitively (the pH labels use capital "pH"; the 1428/1429/
1432 shuffle required label-keyed, not value-keyed, replacement). Each modified
file gets a FIX_NODE_GROUNDING_CURIE curation event. Regenerated all 477 pages.
Flips CI label-correspondence to Phase 2: `validate-products` is now a BLOCKING
gate. Validator reports 113 OK_CANONICAL + 2 OK_SYNONYM + 1 OK_EXCEPTION, 0
errors. validate-strict: 477 files, 0 errors.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.
What
Closes out the id↔label validator rollout (Phase 1 → Phase 2 enforcing) by fixing the 15 mismatches the validator flagged at adoption and making the gate blocking.
All 15 were pre-existing wrong CURIEs in
mappings/node_grounding.tsv, each verified against the OAK sqlite before correcting:exceptions:(OAK canonical is the awkward "radiation emitting intensity quality")Re-grounding migration
ground_causal_nodes.pyonly fills empty slots, so the wronggrounding:values already written into trait YAMLs needed an explicit overwrite. 34 causal-node groundings across 31 files re-migrated to the corrected CURIEs, matched by(label, node_type)case-insensitively — the pH node labels use capital "pH", and the 1428→1429→1430 / 1432→1428 shuffle required label-keyed (not value-keyed) replacement to avoid collisions. Each modified file carries aFIX_NODE_GROUNDING_CURIEcuration event. All 477 pages regenerated.Gate flipped to enforcing
label-correspondence.yaml:validate-productsis now a blocking step (was report-only). Validator: 113 OK_CANONICAL + 2 OK_SYNONYM + 1 OK_EXCEPTION, 0 errors.validate-strict: 477 files, 0 errors. Pin guard unchanged/valid.🤖 Generated with Claude Code