Skip to content

feat(ogar-dismech): compile-time classid reservation for DisMech (0x0333) - #274

Merged
AdaWorldAPI merged 1 commit into
mainfrom
claude/ogar-dismech-classid-0333
Aug 17, 2026
Merged

feat(ogar-dismech): compile-time classid reservation for DisMech (0x0333)#274
AdaWorldAPI merged 1 commit into
mainfrom
claude/ogar-dismech-classid-0333

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

What

Mints DISMECH_CONCEPT_ID = 0x0333 in a new crate ogar-dismech as the authority-side classid reservation for DisMech disease-mechanism knowledge (Monarch Initiative dismech, transcoded in the public sibling repo AdaWorldAPI/dismech-rs). Mirrors ogar-ro's RELATION_BODY_CONCEPT_ID (0x0306) pattern exactly: a bare constant plus a concept_id_collision_guard test module that asserts no ogar-obo namespace table claims the same id.

Why 0x0333 is safe

Per ogar-obo/src/registry.rs's META_STUDY_SPINE doc comment, the 0x03 Ontology domain has a documented three-attempt collision history:

  • OBO_CORE: 0x0301..=0x0305
  • ogar_ro::RELATION_BODY_CONCEPT_ID: 0x0306 (the first META_STUDY_SPINE placement collided here)
  • a private-consumer odd-stride run: 0x0307, 09, 0B, 0D, 0F, 11, 13, 15, 17, 19, 1B, 1D live, 0x031F/0x0321 retired-not-reused (the second META_STUDY_SPINE placement collided with four of these)
  • META_STUDY_SPINE: 0x0340..=0x0347

0x0333 clears all of the above — above 0x0321 (past the retired tail of the odd-stride run) and below 0x0340 (below META_STUDY_SPINE) — landing in the gap between the two documented bands. The stays_in_the_0x03_ontology_domain_clear_of_documented_bands test pins both boundaries mechanically so a future mint into either band fails loudly instead of requiring hand-enumeration to catch.

dismech-rs stays zero-dependency

This crate is purely the authority-side half of the plug-and-play contract — same posture ogar-obo itself takes for its own consumers. dismech-rs mints nothing in the shared ogar_vocab codebook and does not depend on OGAR at all; this crate exists so the reservation is guarded and discoverable on the OGAR side without forcing a link.

Testing

  • cargo test -p ogar-dismech — 4/4 green (concept id value, render classid composition, the collision guard against OBO_CORE + META_STUDY_SPINE, and the anti-vacuity check that those tables are actually populated)
  • cargo test -p ogar-obo — 43/43 green (unaffected)
  • cargo test -p ogar-ro — 8+4 green (unaffected)
  • cargo clippy -p ogar-dismech -- -D warnings — clean
  • cargo fmt -p ogar-dismech -- --check — clean

No CI workflow file exists in this repo yet, so the above is the full local gate per CLAUDE.md.


Generated by Claude Code

…333)

Mints DISMECH_CONCEPT_ID = 0x0333 as the authority-side reservation for
DisMech disease-mechanism concepts (Monarch Initiative dismech, transcoded
in the public sibling repo AdaWorldAPI/dismech-rs), mirroring ogar-ro's
RELATION_BODY_CONCEPT_ID (0x0306) pattern exactly.

0x0333 sits inside the shared 0x03 Ontology domain, clear of:
- ogar_obo::registry::OBO_CORE (0x0301..=0x0305)
- ogar_ro::RELATION_BODY_CONCEPT_ID (0x0306)
- the documented private-consumer odd-stride run (0x0307..=0x031D live,
  0x031F/0x0321 retired-not-reused — see ogar-obo/src/registry.rs's
  META_STUDY_SPINE doc comment for the three-attempt collision history
  this band records)
- ogar_obo::registry::META_STUDY_SPINE (0x0340..=0x0347)

A concept_id_collision_guard test module asserts no ogar-obo namespace
table claims 0x0333, and pins the domain + band clearance mechanically
(no hand-enumeration required to re-verify later).

dismech-rs stays zero-dependency — this crate is purely the authority-
side half of the plug-and-play contract, so a consumer never has to
link OGAR just to use the reserved classid.
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@coderabbitai

coderabbitai Bot commented Aug 17, 2026

Copy link
Copy Markdown

Important

Review available on request

  • 🔍 Trigger review

Reviews should be triggered manually for repositories with fewer than 10 stars. Select Trigger review above or comment @coderabbitai review to review the latest changes. For a full review, comment @coderabbitai full review.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: c711beda-6ba2-4bed-b096-097581d0b261


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@cursor

cursor Bot commented Aug 17, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot 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_858772e2-41bc-4267-bead-b2869d167eaf)

@AdaWorldAPI
AdaWorldAPI merged commit 15c5dcb into main Aug 17, 2026
3 checks passed
AdaWorldAPI added a commit to AdaWorldAPI/dismech-rs that referenced this pull request Aug 17, 2026
…h claim

ogar-dismech merged (AdaWorldAPI/OGAR#274) — 0x0333 is now compile-time
collision-guarded. Marks the plan checklist and TECH_DEBT.md entry done.

Also corrects a stale claim carried in CLAUDE.md and TECH_DEBT.md that
MedCare-rs holds a crates/medcare-dismech resolver: re-checked directly
against the live MedCare-rs checkout, no such crate exists anywhere in
that repo. Struck rather than deleted, per this repo's own TECH_DEBT
convention.

Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants