Skip to content

plan: OGAR sink-in + consumer-bridge removal (medcare-bridge → UnifiedBridge → delete)#623

Merged
AdaWorldAPI merged 4 commits into
mainfrom
claude/medcare-bridge-lance-graph-wmx76z
Jun 30, 2026
Merged

plan: OGAR sink-in + consumer-bridge removal (medcare-bridge → UnifiedBridge → delete)#623
AdaWorldAPI merged 4 commits into
mainfrom
claude/medcare-bridge-lance-graph-wmx76z

Conversation

@AdaWorldAPI

@AdaWorldAPI AdaWorldAPI commented Jun 30, 2026

Copy link
Copy Markdown
Owner

What

A doc-only plan that codifies the sink-in layering (what lives in OGAR / lance-graph-ogar vs lance-graph-contract / lance-graph-rbac) and sequences the final removal of the deprecated per-consumer bridges — recasting the medcare domain from a bridge into reusable patterns + domain-specific Ontology Schema enrichment. Plus two session handovers (rebased onto current main).

Grounded against the actual OGAR PR arc #95#142 (all 48 read at title level; #95/#114/#137 read in full).

Grounded findings (§1.5)

The migration is ~90% shipped, on both sides:

The decision (§2 — #95's layout, verbatim)

  • OGAR owns the meaning: PortSpec / codebook / ClassView / ActionDef / ontology.
  • lance-graph-contract owns the zero-dep wire mirror (the parity guard — never a dependency).
  • lance-graph-ontology owns the OGIT registry.
  • lance-graph-rbac owns grants keyed on the shared lo-u16 concept (render hi-u16 never gates RBAC — the CLASSID-RBAC-KEYSTONE-SPEC; DO arm + RBAC meet at ActionHandler/auth_store 0x0B01).
  • lance-graph-ogar keeps only the UnifiedBridge<P> mechanism + parity.

The medcare recast (§3)

The medcare domain dissolves into reusable patterns (the shared HealthcarePort::class_id / convergent codebook surface in OGAR) + domain-specific Ontology Schema enrichment (Healthcare 0x09XX / FMA-V3 0x1000_0A01 / CPIC-V3 0x1000_0E00 in OGIT) — never a bridge in the spine.

Deliverables (operator-gated)

D-SINK-1 ratify layering → D-SINK-2 migrate consumers off the aliases, riding #95's wave plan (cross-repo, Iron Rule 5) → D-SINK-3 delete the 6 aliases (scope-lock tests ported first, per I-LEGACY-API-FEATURE-GATED) → D-SINK-4 reconcile the two WoaBridge identities → D-SINK-5 sink the ontology (the cross-repo codebook-mint arc).

Gates

No deletion before consumers migrate (OGAR#95: "nothing removed; deletion lands later"). Intersects the operator-gated classid realign (D-OVC) + Canon:Custom. Extends CONSUMER-BRIDGE-DEPRECATION.md + ogar-vocab-contract-codebook-migration-v1; does not supersede them.

Scope

Doc-only — the plan + an INTEGRATION_PLANS.md prepend (board-hygiene, same commit) + two handover docs. No code, no contract surface touched. PROPOSED.

🤖 Generated with Claude Code


Generated by Claude Code

Summary by CodeRabbit

  • Documentation
    • Added a new integration plan entry outlining the next steps for the bridge-removal rollout and migration gating.
    • Added a detailed handover note summarizing session state, completed work, key constraints, and recommended next actions.
    • Added a proposed plan describing the staged migration away from deprecated bridge aliases, including rollout order and safeguards.

claude added 4 commits June 30, 2026 16:43
Session handover for the next session: what shipped (#616 merged, #617
merged, ruff #29 open), the three-layer thesis, the V3 state (OSINT/FMA/
CPIC all wired as of #618 — none by this session), the built-but-unmerged
minter (facet_mint @ serene-mayer 360fc72, 8 tests green), and the
brick-3 MedCare probe as the single CONJECTURE→FINDING gate. Includes the
burn/owl corrections and the sync-first discipline.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYvNjD8M8LMNYbRy3gq2FP
Cross-links the parallel V3-identity/genome session (614/615/618, q2/cpic
NARS prototype, CYP2D6 falsifier) as the companion half of the arc. Three
corrections their handover surfaced:
- mint OGIT->codebook is a CROSS-REPO arc (ogar-vocab + contract CODEBOOK
  + lance-graph-ogar parity together), per ISS-OGAR-GENETICS-MIRROR-PENDING
  / E-CODEBOOK-MINT-IS-A-CROSS-REPO-ARC — not a local wire.
- Canon:Custom flip must be atomic over the COMPLETE V3 set (OSINT+FMA+
  CPIC), now unblocked by #618 (I-LEGACY-API-FEATURE-GATED).
- Board-hygiene debt logged: #616/#617 shipped without same-commit
  EPIPHANIES/PR_ARC/LATEST_STATE updates; fold into the next PR alongside
  the companion's outstanding 614/615/618 rows.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYvNjD8M8LMNYbRy3gq2FP
…edBridge -> delete)

Codifies the sink-in layering and sequences the final deletion of the
deprecated per-consumer bridges. Grounded finding: the migration is ~90%
shipped — all 6 *_bridge.rs (incl. medcare) are already #[deprecated]
type FooBridge = UnifiedBridge<FooPort> aliases over one generic harness;
CONSUMER-BRIDGE-DEPRECATION.md (OGAR#95) is the live doctrine.

Sink-in decision: OGAR owns meaning (PortSpec/codebook/ClassView/ActionDef/
ontology); lance-graph-contract owns the zero-dep wire mirror (parity guard,
not a dep); lance-graph-ontology owns the OGIT registry; lance-graph-rbac
owns grants keyed on the shared lo-u16 concept; lance-graph-ogar keeps only
the UnifiedBridge mechanism + parity.

medcare recast: reusable patterns (shared HealthcarePort/codebook surface in
OGAR) + domain-specific Ontology Schema enrichment (Healthcare 0x09XX /
FMA-V3 / CPIC-V3 in OGIT) — never a bridge in the spine.

D-SINK-1..5: ratify -> migrate consumers off MedcareBridge (cross-repo) ->
delete the 6 aliases (scope-lock tests ported first) -> reconcile the two
WoaBridge identities -> sink the ontology (cross-repo codebook-mint arc).

Board-hygiene: INTEGRATION_PLANS.md prepended same-commit. Doc-only,
PROPOSED, operator-gated. Extends CONSUMER-BRIDGE-DEPRECATION +
ogar-vocab-contract-codebook-migration-v1.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYvNjD8M8LMNYbRy3gq2FP
Read all 48 OGAR PRs since the #95 anchor (titles) + #95/#114/#137 bodies.
Adds a grounding section + corrects two things:

- §2 layering is #95's verbatim (classid hi=APP/render : lo=concept;
  Medcare patient=0x0005_0901). D-SINK-2 now RIDES #95's wave plan
  (W0 OpenProject/Redmine -> W1 WoA -> W2 SMB -> W3 Odoo -> W4 q2)
  instead of inventing its own order.
- Records what is ALREADY shipped on the OGAR side so the plan sequences
  the last mile, not a green field: OGIT 1:1 import (#105), HIRO DO arm +
  the lossless-DO rule (#114, shape [G] / execution CONJECTURE), FMA
  skeletal spine (#116/#117), classid-driven envelope parser (#128),
  polyglot transpiler emit_csharp/emit_python consuming ogar-from-ruff
  (#131/#138), and the COMPILED-ClassView-is-the-spine correction (#137:
  not SurrealQL, not a runtime interpreter; Askama = membrane emit).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYvNjD8M8LMNYbRy3gq2FP
@coderabbitai

coderabbitai Bot commented Jun 30, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Three documentation files are added: a four-line entry in the integration plans index registering the OGAR sink-in plan, a 236-line plan document (v1) detailing deliverables, layering boundaries, gates, and medcare recast, and a 210-line session handover capturing the AST-address conjecture state, V3 wiring, minter status, and next actions.

Changes

OGAR Sink-in Plan and Session Handover

Layer / File(s) Summary
OGAR sink-in and bridge removal plan (v1)
.claude/board/INTEGRATION_PLANS.md, .claude/plans/ogar-sink-in-and-consumer-bridge-removal-v1.md
New plan document defines concern→home layering table, ordered deliverables D-SINK-1 through D-SINK-5 (layering ratification, consumer migration, alias deletion with scope-lock test porting, WoaBridge reconciliation, codebook-mint parity), explicit gates and risks, medcare recast into reusable patterns + ontology enrichment, and a references section; the plan is registered in the integration plans index.
AST-address session handover capstone
.claude/handovers/2026-06-26-ast-address-to-next-session-capstone.md
New handover document records session framing (no product code written), TL;DR, mandatory reads, shipped PR inventory, three-layer AST/ClassView/OGAR thesis, V3 domain wiring state, minter branch/commit, critical path gates for the C# harvester→minter→lance query chain, session caveats/corrections, concrete next actions, and operational coordinates including the $PORT override note.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • AdaWorldAPI/lance-graph#585: Refactors OGAR-driven bridges by moving *Bridge/UnifiedBridge including MedcareBridge from lance-graph-ontology to lance-graph-ogar, directly matching the sink-in layering boundaries this plan codifies.
  • AdaWorldAPI/lance-graph#589: Marks consumer-facing bridge alias types (MedcareBridge, WoaBridge, SmbBridge, OdooBridge) as #[deprecated] and points consumers to {Port}::class_id(name), the exact migration mechanic described in D-SINK-2.
  • AdaWorldAPI/lance-graph#587: Introduces WoaBridge/SmbBridge/OdooBridge definitions and bridge re-exports, directly targeted by the WoaBridge identity reconciliation deliverable (D-SINK-4) in this plan.

Poem

🐇 Hoppity-hop through the bridge and beyond,
Aliases sink like a stone in a pond.
The minter is ready, the codebook is set,
D-SINK-1 through 5 — no deliverable's skipped yet!
Consumer migration gates every delete,
With handover notes making next sessions neat. ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the doc-only plan to sink in OGAR and remove consumer bridges, including the medcare-bridge to UnifiedBridge transition.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

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.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (2)
.claude/plans/ogar-sink-in-and-consumer-bridge-removal-v1.md (2)

67-68: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Clarify medcare-rs placement in the migration wave.

The wave sequence (W0–W4) lists OpenProject, Redmine, WoA, SMB, Odoo, and q2, but medcare-rs is cited as a consumer in D-SINK-2 without a wave assignment. If Medcare is already migrated or follows a separate track, state that explicitly; if it belongs in the sequence, add it to the wave list to match OGAR#95's ordering.

Also applies to: 160-162

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/plans/ogar-sink-in-and-consumer-bridge-removal-v1.md around lines 67
- 68, Clarify where medcare-rs belongs in the migration plan so D-SINK-2 matches
the wave ordering described in the document. Update the wave sequence in the
planning section to either explicitly place medcare-rs in W0–W4 or state that it
is already migrated or tracked separately, and make sure the D-SINK-2 consumer
reference for medcare-rs is consistent with that decision.

162-162: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value

Expand "Iron Rule 5" on first use or add a footnote.

The document cites "Iron Rule 5" as a cross-repo approval gate without immediate context. A brief parenthetical or link to .claude/knowledge/ogar-consumer-preflight.md (which mentions the "pull-don't-reconstruct iron rule") would help readers who don't have the full rule set memorized.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/plans/ogar-sink-in-and-consumer-bridge-removal-v1.md at line 162,
The first mention of “Iron Rule 5” is too terse and lacks context for readers.
Update the “Cross-repo approval gate” reference in this plan to expand the rule
inline with a short parenthetical or add a footnote/link to
.claude/knowledge/ogar-consumer-preflight.md, and keep the “Iron Rule 5” wording
tied to that section so it’s easy to find if the surrounding text changes.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In @.claude/plans/ogar-sink-in-and-consumer-bridge-removal-v1.md:
- Around line 67-68: Clarify where medcare-rs belongs in the migration plan so
D-SINK-2 matches the wave ordering described in the document. Update the wave
sequence in the planning section to either explicitly place medcare-rs in W0–W4
or state that it is already migrated or tracked separately, and make sure the
D-SINK-2 consumer reference for medcare-rs is consistent with that decision.
- Line 162: The first mention of “Iron Rule 5” is too terse and lacks context
for readers. Update the “Cross-repo approval gate” reference in this plan to
expand the rule inline with a short parenthetical or add a footnote/link to
.claude/knowledge/ogar-consumer-preflight.md, and keep the “Iron Rule 5” wording
tied to that section so it’s easy to find if the surrounding text changes.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 2c35b62f-42c5-470c-bca0-1478807e09cf

📥 Commits

Reviewing files that changed from the base of the PR and between 242f3d3 and 780982f.

📒 Files selected for processing (3)
  • .claude/board/INTEGRATION_PLANS.md
  • .claude/handovers/2026-06-26-ast-address-to-next-session-capstone.md
  • .claude/plans/ogar-sink-in-and-consumer-bridge-removal-v1.md

@AdaWorldAPI AdaWorldAPI merged commit b56deab into main Jun 30, 2026
1 check 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