Skip to content

fix: lance-graph-ogar OGAR deps switch path -> git (external-consumer resolution) - #1019

Merged
AdaWorldAPI merged 1 commit into
mainfrom
claude/fix-lance-graph-ogar-git-deps
Aug 24, 2026
Merged

fix: lance-graph-ogar OGAR deps switch path -> git (external-consumer resolution)#1019
AdaWorldAPI merged 1 commit into
mainfrom
claude/fix-lance-graph-ogar-git-deps

Conversation

@AdaWorldAPI

@AdaWorldAPI AdaWorldAPI commented Aug 24, 2026

Copy link
Copy Markdown
Owner

Root cause

lance-graph-ogar/Cargo.toml depended on five OGAR crates via path = "../../../OGAR/crates/..." — an escaping relative path, correct for this
sandbox's local multi-repo layout (documented as an explicit "NO PINS —
operator policy 2026-07-07"), but structurally unresolvable once
lance-graph-ogar is consumed as a git dependency by any external
repo. Cargo clones a git-sourced crate into its own opaque checkout cache
(~/.cargo/git/checkouts/lance-graph-<hash>/<rev>/); a path escaping the
fetched repo resolves relative to that cache directory, which has no
OGAR sibling — nothing ever puts one there, regardless of how fresh
either repo is. This is a hard Cargo constraint, not a missing
sibling-checkout step, and it affects every external consumer of this
crate identically.

Checked and ruled out first: "is OGAR stale?" — no, local /home/user/OGAR
matched origin/main exactly, ogar-loco has been on main since
2026-08-05 (89d0d3a9).

Fix

Switches all five OGAR deps (ogar-vocab, ogar-class-view,
ogar-ontology, ogar-loco, ogar-adapter-surrealql) from path to
git = "https://github.com/AdaWorldAPI/OGAR", branch = "main".

  • cargo check / cargo test green standalone (this crate owns its own
    [workspace] root) — 72+ lib tests including the codebook COUNT_FUSE.
  • Both this crate's OGAR git deps and the existing [patch] section's
    transitive lance-graph-contract redirect resolve to the identical rev
    (#719471db) — no new contract-source divergence introduced.

Tradeoff, accepted explicitly: the 2026-07-07 policy's "always
current sibling, no Cargo.lock pin" property is gone for this crate — a
pin is now unavoidable for external consumability. Local/in-sandbox dev
is unaffected (same public GitHub repo, still fetched/cached).

Known residue, not fixed here: symbiont and cognitive-stack carry
the identical escaping-path shape (named in the same superseded comment
this PR corrects) and are left untouched — symbiont is separately
marked deprecated/operator no-go; cognitive-stack is unaudited for
external git-consumers. Recorded in the board entry so a future session
doesn't assume this PR covers them.

Board hygiene

EPIPHANIES.mdE-GIT-SOURCED-CRATE-CANNOT-PATH-DEP-OUTSIDE-ITS-REPO-1.

🤖 Generated with Claude Code

@coderabbitai

coderabbitai Bot commented Aug 24, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: e497dda5-d7ab-4217-b9f2-ed02775f8e3c


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 24, 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_285cb0ee-0898-43d3-8361-ce67008e4486)

… resolution)

Any external repo pulling lance-graph-ogar via a git dependency fails to
resolve OGAR's crates: lance-graph-ogar's path deps escape lance-graph's
own repo (../../../OGAR/crates/...), and Cargo's git checkout cache has
no OGAR sibling at that relative location regardless of what exists on
GitHub or on the builder's disk. This is a hard Cargo constraint on
git-sourced crates with escaping path deps, not a missing sibling-checkout
step, and it made the crate unconsumable by any external repo whatsoever.

Switches ogar-vocab, ogar-class-view, ogar-ontology, ogar-loco, and
ogar-adapter-surrealql from path to git deps pinned at
AdaWorldAPI/OGAR#main. Verified: cargo check/test green standalone
(72+ lib tests incl. the codebook COUNT_FUSE), both this crate's OGAR
deps and the existing [patch] section resolve to the identical rev.

Accepts the tradeoff the 2026-07-07 "no pins" policy explicitly avoided
(a Cargo.lock rev pin) since the alternative is total external
unconsumability. symbiont and cognitive-stack carry the same escaping-path
shape and are left unfixed here, recorded so it isn't assumed covered.
@AdaWorldAPI
AdaWorldAPI force-pushed the claude/fix-lance-graph-ogar-git-deps branch from d2ed093 to cbd57d7 Compare August 24, 2026 07:03
@AdaWorldAPI AdaWorldAPI changed the title fix: lance-graph-ogar OGAR deps path -> git (medcare-rs #565 Railway fix) fix: lance-graph-ogar OGAR deps switch path -> git (external-consumer resolution) Aug 24, 2026
@AdaWorldAPI
AdaWorldAPI merged commit acd60da into main Aug 24, 2026
6 checks passed
AdaWorldAPI pushed a commit that referenced this pull request Aug 24, 2026
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