mirror of
https://github.com/ModernRelay/omnigraph.git
synced 2026-06-30 02:49:39 +02:00
release: v0.6.2
This commit is contained in:
parent
d0e39e677e
commit
131b78705d
9 changed files with 77 additions and 22 deletions
|
|
@ -16,7 +16,7 @@ Tools that support `@`-imports (Claude Code) auto-include all three files via th
|
||||||
|
|
||||||
`CLAUDE.md` is a symlink to this file — there is exactly one source of truth. Edit `AGENTS.md`.
|
`CLAUDE.md` is a symlink to this file — there is exactly one source of truth. Edit `AGENTS.md`.
|
||||||
|
|
||||||
**Version surveyed:** 0.6.1
|
**Version surveyed:** 0.6.2
|
||||||
**Workspace crates:** `omnigraph-compiler`, `omnigraph` (engine), `omnigraph-policy`, `omnigraph-cli`, `omnigraph-server`
|
**Workspace crates:** `omnigraph-compiler`, `omnigraph` (engine), `omnigraph-policy`, `omnigraph-cli`, `omnigraph-server`
|
||||||
**Storage substrate:** Lance 6.x (columnar, versioned, branchable)
|
**Storage substrate:** Lance 6.x (columnar, versioned, branchable)
|
||||||
**License:** MIT
|
**License:** MIT
|
||||||
|
|
|
||||||
10
Cargo.lock
generated
10
Cargo.lock
generated
|
|
@ -4543,7 +4543,7 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "omnigraph-cli"
|
name = "omnigraph-cli"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"assert_cmd",
|
"assert_cmd",
|
||||||
"clap",
|
"clap",
|
||||||
|
|
@ -4565,7 +4565,7 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "omnigraph-compiler"
|
name = "omnigraph-compiler"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ahash",
|
"ahash",
|
||||||
"arrow-array",
|
"arrow-array",
|
||||||
|
|
@ -4586,7 +4586,7 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "omnigraph-engine"
|
name = "omnigraph-engine"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"arc-swap",
|
"arc-swap",
|
||||||
"arrow-array",
|
"arrow-array",
|
||||||
|
|
@ -4627,7 +4627,7 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "omnigraph-policy"
|
name = "omnigraph-policy"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cedar-policy",
|
"cedar-policy",
|
||||||
"clap",
|
"clap",
|
||||||
|
|
@ -4640,7 +4640,7 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "omnigraph-server"
|
name = "omnigraph-server"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"arc-swap",
|
"arc-swap",
|
||||||
"async-trait",
|
"async-trait",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "omnigraph-cli"
|
name = "omnigraph-cli"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
description = "CLI for the Omnigraph graph database."
|
description = "CLI for the Omnigraph graph database."
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
|
|
@ -13,10 +13,10 @@ name = "omnigraph"
|
||||||
path = "src/main.rs"
|
path = "src/main.rs"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
omnigraph = { package = "omnigraph-engine", path = "../omnigraph", version = "0.6.1" }
|
omnigraph = { package = "omnigraph-engine", path = "../omnigraph", version = "0.6.2" }
|
||||||
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.6.1" }
|
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.6.2" }
|
||||||
omnigraph-policy = { path = "../omnigraph-policy", version = "0.6.1" }
|
omnigraph-policy = { path = "../omnigraph-policy", version = "0.6.2" }
|
||||||
omnigraph-server = { path = "../omnigraph-server", version = "0.6.1" }
|
omnigraph-server = { path = "../omnigraph-server", version = "0.6.2" }
|
||||||
clap = { workspace = true }
|
clap = { workspace = true }
|
||||||
color-eyre = { workspace = true }
|
color-eyre = { workspace = true }
|
||||||
serde = { workspace = true }
|
serde = { workspace = true }
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "omnigraph-compiler"
|
name = "omnigraph-compiler"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
description = "Schema/query compiler for Omnigraph. Zero Lance dependency."
|
description = "Schema/query compiler for Omnigraph. Zero Lance dependency."
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "omnigraph-policy"
|
name = "omnigraph-policy"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
description = "Policy / authorization layer for Omnigraph — Cedar-backed PolicyEngine, PolicyChecker trait, ResourceScope enum."
|
description = "Policy / authorization layer for Omnigraph — Cedar-backed PolicyEngine, PolicyChecker trait, ResourceScope enum."
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "omnigraph-server"
|
name = "omnigraph-server"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
description = "HTTP server for the Omnigraph graph database."
|
description = "HTTP server for the Omnigraph graph database."
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
|
|
@ -19,9 +19,9 @@ default = []
|
||||||
aws = ["dep:aws-config", "dep:aws-sdk-secretsmanager"]
|
aws = ["dep:aws-config", "dep:aws-sdk-secretsmanager"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
omnigraph = { package = "omnigraph-engine", path = "../omnigraph", version = "0.6.1" }
|
omnigraph = { package = "omnigraph-engine", path = "../omnigraph", version = "0.6.2" }
|
||||||
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.6.1" }
|
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.6.2" }
|
||||||
omnigraph-policy = { path = "../omnigraph-policy", version = "0.6.1" }
|
omnigraph-policy = { path = "../omnigraph-policy", version = "0.6.2" }
|
||||||
axum = { workspace = true }
|
axum = { workspace = true }
|
||||||
clap = { workspace = true }
|
clap = { workspace = true }
|
||||||
color-eyre = { workspace = true }
|
color-eyre = { workspace = true }
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "omnigraph-engine"
|
name = "omnigraph-engine"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
description = "Runtime engine for the Omnigraph graph database."
|
description = "Runtime engine for the Omnigraph graph database."
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
|
|
@ -16,8 +16,8 @@ default = []
|
||||||
failpoints = ["dep:fail", "fail/failpoints"]
|
failpoints = ["dep:fail", "fail/failpoints"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.6.1" }
|
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.6.2" }
|
||||||
omnigraph-policy = { path = "../omnigraph-policy", version = "0.6.1" }
|
omnigraph-policy = { path = "../omnigraph-policy", version = "0.6.2" }
|
||||||
lance = { workspace = true }
|
lance = { workspace = true }
|
||||||
lance-datafusion = { workspace = true }
|
lance-datafusion = { workspace = true }
|
||||||
datafusion = { workspace = true }
|
datafusion = { workspace = true }
|
||||||
|
|
@ -51,7 +51,7 @@ chrono = { workspace = true }
|
||||||
arc-swap = { workspace = true }
|
arc-swap = { workspace = true }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.6.1" }
|
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.6.2" }
|
||||||
tokio = { workspace = true }
|
tokio = { workspace = true }
|
||||||
lance-namespace-impls = { workspace = true }
|
lance-namespace-impls = { workspace = true }
|
||||||
serial_test = "3"
|
serial_test = "3"
|
||||||
|
|
|
||||||
55
docs/releases/v0.6.2.md
Normal file
55
docs/releases/v0.6.2.md
Normal file
|
|
@ -0,0 +1,55 @@
|
||||||
|
# Omnigraph v0.6.2
|
||||||
|
|
||||||
|
v0.6.2 is a maintenance-safety release on top of v0.6.1. It tightens the
|
||||||
|
`optimize` / recovery boundary, adds an explicit repair path for uncovered
|
||||||
|
manifest/head drift, accepts pretty-printed JSON load input, and updates the
|
||||||
|
project governance and release automation around those fixes.
|
||||||
|
|
||||||
|
## Highlights
|
||||||
|
|
||||||
|
- **Explicit `omnigraph repair`.** New `repair` CLI support previews uncovered
|
||||||
|
manifest/head drift by default and reports each table's classification,
|
||||||
|
action, manifest version, Lance HEAD version, Lance operations, and any
|
||||||
|
classification error. `--confirm` publishes verified maintenance-only drift;
|
||||||
|
`--force --confirm` can publish suspicious or unverifiable drift after
|
||||||
|
operator review.
|
||||||
|
- **Optimize skips uncovered drift.** `omnigraph optimize` now refuses to
|
||||||
|
interpret Lance HEAD movement that is ahead of `__manifest` without a recovery
|
||||||
|
sidecar. Those tables are reported as `skipped: DriftNeedsRepair` and left
|
||||||
|
untouched until `omnigraph repair` classifies them.
|
||||||
|
- **Optimize publishes compaction.** Successful compaction now publishes the
|
||||||
|
compacted Lance version back through the graph manifest and is covered by an
|
||||||
|
`Optimize` recovery sidecar. A crash after Lance compaction but before
|
||||||
|
manifest publish converges through the normal recovery sweep instead of
|
||||||
|
leaving hidden drift.
|
||||||
|
- **Recovery roll-back convergence.** Recovery roll-back now aligns the
|
||||||
|
manifest-visible version after restoring a table, closing the residual where
|
||||||
|
Lance HEAD and `__manifest` could stay out of sync after recovery.
|
||||||
|
- **Pretty-printed JSON load input.** `load` accepts multi-line JSON objects in
|
||||||
|
addition to one-object-per-line JSONL, so formatted fixture or export files no
|
||||||
|
longer need to be minified before import.
|
||||||
|
|
||||||
|
## Operational Notes
|
||||||
|
|
||||||
|
- `repair` requires a clean recovery state. Pending `__recovery` sidecars still
|
||||||
|
belong to automatic open-time recovery; reopen the graph first, then run
|
||||||
|
repair if drift remains.
|
||||||
|
- `repair --confirm` only auto-publishes drift made of Lance maintenance
|
||||||
|
operations (`Rewrite` and `ReserveFragments`). Semantic operations such as
|
||||||
|
append, delete, update, and merge are refused unless the operator uses
|
||||||
|
`--force --confirm`.
|
||||||
|
- `optimize` remains non-destructive. It still skips blob-bearing tables while
|
||||||
|
OmniGraph is pinned to the Lance version with the blob-v2 compaction issue.
|
||||||
|
- No manual on-disk migration is required. Existing graphs open under v0.6.2;
|
||||||
|
the internal manifest schema stamp remains v3.
|
||||||
|
|
||||||
|
## Docs, Governance, And CI
|
||||||
|
|
||||||
|
- Added issue, discussion, RFC, and pull-request templates plus governance docs
|
||||||
|
for the external contribution path.
|
||||||
|
- Regenerated CODEOWNERS tables and adjusted branch-protection docs so code
|
||||||
|
owners can bypass required PR review where repository rules allow it.
|
||||||
|
- Trimmed Windows release builds out of per-PR CI and kept Windows packaging on
|
||||||
|
tag releases.
|
||||||
|
- Made Homebrew audit diagnostic-only in the release workflow so a flaky audit
|
||||||
|
cannot block publishing an otherwise valid formula update.
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
"name": "MIT",
|
"name": "MIT",
|
||||||
"identifier": "MIT"
|
"identifier": "MIT"
|
||||||
},
|
},
|
||||||
"version": "0.6.1"
|
"version": "0.6.2"
|
||||||
},
|
},
|
||||||
"paths": {
|
"paths": {
|
||||||
"/branches": {
|
"/branches": {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue