Skip to content

ogar-loco: value_codebook seam + ogar-ro relation vocabulary (W-RO-1..5) - #246

Merged
AdaWorldAPI merged 1 commit into
mainfrom
claude/rust-scratch-abi-soa-gsamge
Aug 5, 2026
Merged

ogar-loco: value_codebook seam + ogar-ro relation vocabulary (W-RO-1..5)#246
AdaWorldAPI merged 1 commit into
mainfrom
claude/rust-scratch-abi-soa-gsamge

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

Closes the RO/ogar-loco consumer wishlist relayed from a lance-graph session (W-RO-1 through W-RO-5).

W-RO-1 — ogar-ro, a new vocabulary crate

A curated RO/BFO binary-predicate palette (part_of, has_part, regulates, capable_of, overlaps, …) minted as FnIndex bytes in ogar-loco's domain range, implementing Vocabulary so a relation assertion rides the exact same Call ABI every sibling vocabulary shares. CURIEs cross-reference real RO terms via ogar_obo::Namespace::Ro (ro_curies_parse_as_real_ontology_terms). Mints zero rows in the shared ogar_vocab codebook — the relation-body content classid sits one slot past ogar-obo's own RO term-node concept, inside the already-reserved Ontology domain.

W-RO-2 — confirmed mechanically, not just asserted

Every minted predicate declares pushes_result = Some(false), so a relation body segments into per-assertion statements through the existing statement_bounds machinery with zero new plumbing — exercised end-to-end by every_minted_predicate_is_a_binary_non_pushing_leaf_assertion.

W-RO-3 — new value_codebook seam

ogar-loco's Vocabulary gains domain_value_codebook/value_codebook, threaded through FnSpec, VocabularyTable::compose, CheckedVocabulary's delegation, and conformance::check's shared-core drift detection. Default None everywhere — opt-in, zero cost for every existing vocabulary (ogar-blockly unaffected, still green). ogar-ro is the first user: every predicate declares RELATION_TARGET_CODEBOOK, the basin-local table its subject/object operands resolve against (mirrors medcare-gotham's EdgeSlots shape).

W-RO-4 — documented, not coded

CheckedVocabulary never required a callability marker; ogar-ro is validated exactly like ogar-blockly is, whether or not any consumer invokes a relation call. Recorded in ogar-ro's module docs rather than adding dead machinery.

W-RO-5 — recorded as an open cross-repo decision, not picked

ogar_loco::LaneShape and lance-graph-contract's CascadeShape are bit-identical carvings. Unifying them changes a dependency edge between two repos with independent release cadences — not this crate's call. Filed as a named, unresolved item in ogar-ro's module docs instead of unilaterally choosing a direction.

Verification

  • cargo test -p ogar-loco -p ogar-ro -p ogar-blockly — all green
  • cargo clippy --all-targets -- -D warnings — clean
  • RUSTDOCFLAGS="-D warnings" cargo doc --no-deps — clean
  • cargo fmt --check — clean

Generated by Claude Code

Closes the RO/ogar-loco consumer wishlist relayed from lance-graph:

- W-RO-1: new ogar-ro crate — a curated RO/BFO binary-predicate palette
  (part_of, has_part, regulates, capable_of, …) minted as FnIndex bytes
  in ogar-loco's domain range, implementing Vocabulary so a relation
  assertion rides the same Call ABI as any other sibling vocabulary.
  CURIEs cross-reference real RO terms via ogar-obo::Namespace::Ro
  (ro_curies_parse_as_real_ontology_terms). Mints zero shared-codebook
  rows: the relation-body content classid sits one slot past ogar-obo's
  own RO term-node concept inside the existing Ontology domain.

- W-RO-2: confirmed in running code, not just assertion — every minted
  predicate declares pushes_result = Some(false), so a relation body
  segments into per-assertion statements via the existing
  statement_bounds machinery with zero new plumbing.

- W-RO-3: new ValueCodebook seam on Vocabulary (domain_value_codebook /
  value_codebook), threaded through FnSpec, VocabularyTable::compose,
  CheckedVocabulary's delegation, and conformance::check's shared-core
  drift detection. Default None everywhere — opt-in, zero cost for
  every existing vocabulary (ogar-blockly unaffected). ogar-ro is the
  first user: every predicate declares RELATION_TARGET_CODEBOOK, the
  basin-local table its subject/object operands resolve against.

- W-RO-4: documented, not coded — CheckedVocabulary never required a
  callability marker; ogar-ro is validated exactly like ogar-blockly.

- W-RO-5: recorded as an explicit, unresolved cross-repo decision in
  ogar-ro's module docs (LaneShape vs lance-graph-contract's
  CascadeShape) rather than picked unilaterally — either direction
  changes a dependency edge between two repos with independent release
  cadences.
@cursor

cursor Bot commented Aug 5, 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_07a42855-dd9d-4b2a-8947-587d66347cbf)

@AdaWorldAPI
AdaWorldAPI marked this pull request as ready for review August 5, 2026 15:57
@AdaWorldAPI
AdaWorldAPI merged commit 5c53c4f into main Aug 5, 2026
2 checks passed
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