Add ogar-fma + ogar-cpic public reference-resolution surfaces#227
Merged
Merged
Conversation
Two producer-side reference crates that let a clinical reasoning consumer (medcare-cohorts) resolve its captured loose ends by PULLING public reference from OGAR, instead of fabricating ids or restating upstream ontology (commitment #3: outside ontology is owned upstream). ogar-fma — FMA anatomy structure resolver. A name ("synovial joint", "kidney") resolves to its canonical Anatomy classid (0x0AXX) + FMA cross-reference (the q2 /helix zoom key). The soft-tissue/organ/joint complement to the rigid ogar-fma-skeleton bone atlas; composes existing Anatomy concepts (anatomical_structure/joint/bone), mints nothing. FMA numeric ids filled only where canonical+stable (the skeleton atlas's honesty fence); the rest stay honest None loose ends resolved vs /helix. ogar-cpic — CPIC pharmacogenomics reference surface. A (gene, drug) join key ("TPMT/NUDT15", "azathioprine") resolves to the public gene-> phenotype->recommendation guideline + a NARS (frequency, confidence) deduction premise (the q2 /cpic chain). Routes under the reserved Genetics domain (0x0EXX) at the DOMAIN level only — it honors the codebook's explicit "no Genetics mints without an operator ruling" gate and does NOT mint a concept row; the committed 0x0E01 anchor mint stays a surfaced, operator-gated follow-up. Firewall-clean: both surfaces are public reference (Anatomy / Genetics), never Health/PHI. ogar-cpic carries the phenotype AXIS, never a patient genotype. No sensitive disease concept appears in either crate. 12 lib tests + 2 doctests green; fmt + clippy -D warnings clean.
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_5a8f1bf4-f619-4181-bab6-36efcb27a98e) |
AdaWorldAPI
marked this pull request as ready for review
July 23, 2026 16:51
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
Two producer-side reference crates so a clinical reasoning consumer resolves its captured loose ends by pulling public reference from OGAR, instead of fabricating ids or restating upstream ontology.
ogar-fma— FMA anatomy structure resolver"synovial joint","kidney") → canonical Anatomy classid (0x0AXX) + FMA cross-reference (the q2/helixzoom key).ogar-fma-skeletonbone atlas.anatomical_structure/joint/bone) — mints nothing.9611, tibia12856); the rest stay honestNoneloose ends resolved against/helix.ogar-cpic— CPIC pharmacogenomics reference surface(gene, drug)join key ("TPMT/NUDT15","azathioprine") → public gene→phenotype→recommendation guideline + a NARS(frequency, confidence)deduction premise (the q2/cpicchain).0x0EXX) at the domain level only.Firewall / gate discipline
ConceptDomain::Anatomy/Genetics) — deliberately neverHealth/PHI, per the codebook's firewall split.ogar-cpiccarries the phenotype axis, never a patient genotype.ogar-cpichonors the codebook's explicit "no Genetics mints without an operator ruling" gate: it does NOT mint a concept row. The committed0x0E01anchor mint stays a surfaced, operator-gated follow-up.Tests / gates
ogar-fma: 6 lib tests + 1 doctest;ogar-cpic: 6 lib tests + 1 doctest.cargo fmt+cargo clippy -p ogar-fma -p ogar-cpic --all-targets -- -D warningsclean.Consumer
Paired with the MedCare-rs PR on the same branch, which wires
medcare-cohortsRegion/Pgxloose ends to these surfaces (consumer→producer only).🤖 Generated with Claude Code
https://claude.ai/code/session_01Xv5wRqar5sC5QcXVpkn94n
Generated by Claude Code