Repository navigation
refactor: inline the schema contract in the catalog - #834
Merged
azimafroozeh merged 5 commits intoOct 1, 2026
Merged
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
azimafroozeh
force-pushed
the
schema-contract-manifest-row
branch
from
October 1, 2026 12:17
e1ea84e to
affdd7e
Compare
azimafroozeh
force-pushed
the
schema-contract-manifest-row
branch
from
October 1, 2026 13:17
22cea29 to
de486a4
Compare
ragnorc
added a commit
to ragnorc/omnigraph
that referenced
this pull request
Oct 1, 2026
On main after ModernRelay#834 the golden only falls (every changed row is a get). ModernRelay#834 gave each owner its own control session, which removed the leak the seam scheduler's seed re-pin avoided; 32_001 passes again.
This was referenced Oct 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What & why
Schema apply currently publishes table changes before installing three root schema files, leaving a recovery window between graph and contract publication. Inline the schema source, SchemaIR and identity in main's
__manifestso one CAS publishes the contract, table references and graph head atomically.This removes the schema-apply sentinel and separate schema-file installation protocol. Readers validate contract content from each newly observed manifest image and reuse validated state while freshness checks permit it. Combined cold-open scans, bounded small-file reads and acknowledged publication-batch reuse reduce repeated object-store reads.
Backing issue / RFC
docs/rfcs/2026-09-30-schema-contract-in-manifest.mdis included as a draft; acceptance is pending.Checklist
docs/dev/invariants.md.Local verification
env RUST_MIN_STACK=16777216 cargo test --workspace --exclude omnigraph-gqt --exclude omnigraph-dst --locked --features omnigraph-engine/failpoints,omnigraph-cluster/failpoints --no-fail-fast: 3,498 passed, eight failed, 33 ignored at the full-suite checkpoint. Three integration failures were corrected, and one CLI timeout passed in isolation. Fourforbidden_apisregistry checks remain failing. The full suite was not rerun after the fixes.cargo test -p omnigraph-gqt --locked: 447 passed, including 236 query cases.crates/omnigraph-dst,cargo test -p omnigraph-dst --locked: 109 passed, 31 ignored.Targeted reruns passed 140 engine tests and 100 server tests. Workspace compilation, formatting, default/failpoint/GQT Clippy, documentation, release-note, spelling and whitespace checks pass.
Notes for reviewers
Storage format 13 requires an explicit offline upgrade from supported older formats. Stop all graph access and back up the entire graph root before running
omnigraph upgrade.