From 2c4058de10ac00768663f5183ef754667fb723af Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 31 Aug 2026 15:24:55 +0000 Subject: [PATCH] ogar_codebook: mirror the 9 domain-reference-tree blocks (paired half, same arc) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The paired mirror half of OGAR's 0x90..0x9A mint, landed IN THE SAME ARC — which is the lesson from this morning: the 2026-08-22 mint of the 14 Ontology concepts shipped without its mirror half and left the codebook-parity CI job red for nine days, and the session that noticed concluded from a stale checkout that the mint had never happened. Nine variants + nine match arms, byte-identical to the authority: 0x90 Reference (tree root) · 0x91 Disease · 0x92 Phenomenology · 0x94 Lab · 0x95 Imaging · 0x96 BiologicalProcess · 0x97 Substance · 0x98 Procedure · 0x9A Form. HIGH byte = compartment, LOW byte = vocabulary carried 1:1 from the retired 0x03XX block; zero shared rows, so nothing enters CODEBOOK. 0x93/0x99 are aliases onto Anatomy/Genetics and 0x9E is a predicate slot in ogar-ro — none of the three is minted on either side, so domains_agree holds across the whole range without an edit here. 1278/1278, fmt clean. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01PFnYKqw6d7TTiB9cT8eFdK --- .../lance-graph-contract/src/ogar_codebook.rs | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/crates/lance-graph-contract/src/ogar_codebook.rs b/crates/lance-graph-contract/src/ogar_codebook.rs index b52d712e1..b4c1c3d05 100644 --- a/crates/lance-graph-contract/src/ogar_codebook.rs +++ b/crates/lance-graph-contract/src/ogar_codebook.rs @@ -126,6 +126,42 @@ pub enum ConceptDomain { /// Any high-byte slot not yet assigned a domain (`0x05XX`–`0x06XX`, /// `0x10XX`–`0x16XX`, `0x18XX`–`0xBFXX`, `0xC2XX`–`0xC3XX` — a /// DELIBERATE gap, pinned like OGAR's own `0x10`–`0x16` — and + /// `0x90XX` — reference (domain reference tree). HIGH byte = compartment, LOW + /// byte = vocabulary, carried 1:1 from the retired `0x03XX` block. Zero + /// shared rows: the concepts stay plug-and-play in their producers. + Reference, + /// `0x91XX` — disease (domain reference tree). HIGH byte = compartment, LOW + /// byte = vocabulary, carried 1:1 from the retired `0x03XX` block. Zero + /// shared rows: the concepts stay plug-and-play in their producers. + Disease, + /// `0x92XX` — phenomenology (domain reference tree). HIGH byte = compartment, LOW + /// byte = vocabulary, carried 1:1 from the retired `0x03XX` block. Zero + /// shared rows: the concepts stay plug-and-play in their producers. + Phenomenology, + /// `0x94XX` — lab (domain reference tree). HIGH byte = compartment, LOW + /// byte = vocabulary, carried 1:1 from the retired `0x03XX` block. Zero + /// shared rows: the concepts stay plug-and-play in their producers. + Lab, + /// `0x95XX` — imaging (domain reference tree). HIGH byte = compartment, LOW + /// byte = vocabulary, carried 1:1 from the retired `0x03XX` block. Zero + /// shared rows: the concepts stay plug-and-play in their producers. + Imaging, + /// `0x96XX` — biological_process (domain reference tree). HIGH byte = compartment, LOW + /// byte = vocabulary, carried 1:1 from the retired `0x03XX` block. Zero + /// shared rows: the concepts stay plug-and-play in their producers. + BiologicalProcess, + /// `0x97XX` — substance (domain reference tree). HIGH byte = compartment, LOW + /// byte = vocabulary, carried 1:1 from the retired `0x03XX` block. Zero + /// shared rows: the concepts stay plug-and-play in their producers. + Substance, + /// `0x98XX` — procedure (domain reference tree). HIGH byte = compartment, LOW + /// byte = vocabulary, carried 1:1 from the retired `0x03XX` block. Zero + /// shared rows: the concepts stay plug-and-play in their producers. + Procedure, + /// `0x9AXX` — form (domain reference tree). HIGH byte = compartment, LOW + /// byte = vocabulary, carried 1:1 from the retired `0x03XX` block. Zero + /// shared rows: the concepts stay plug-and-play in their producers. + Form, /// `0xC5XX`, `0xC7XX`+). Unassigned, } @@ -141,6 +177,15 @@ pub fn canonical_concept_domain(id: u16) -> ConceptDomain { 0x01 => ConceptDomain::ProjectMgmt, 0x02 => ConceptDomain::Commerce, 0x03 => ConceptDomain::Ontology, + 0x90 => ConceptDomain::Reference, + 0x91 => ConceptDomain::Disease, + 0x92 => ConceptDomain::Phenomenology, + 0x94 => ConceptDomain::Lab, + 0x95 => ConceptDomain::Imaging, + 0x96 => ConceptDomain::BiologicalProcess, + 0x97 => ConceptDomain::Substance, + 0x98 => ConceptDomain::Procedure, + 0x9A => ConceptDomain::Form, 0x04 => ConceptDomain::Weather, 0x07 => ConceptDomain::Osint, 0x08 => ConceptDomain::Ocr,