omnigraph/crates
aaltshuler 8dc2f15255 feat(cluster): the storage: root — state, catalog, and graph roots relocatable
cluster.yaml gains an optional storage: URI deciding where everything the
cluster STORES lives: the state ledger, lock, content-addressed catalog,
recovery sidecars, approval artifacts, and the derived graph roots
(<storage>/graphs/<id>.omni). Absent, it defaults to the config directory
itself — the original layout, byte-compatible, so pre-existing clusters and
the whole test suite are untouched. Declared configuration always stays in
the working tree (Terraform's config-local/state-remote split); credentials
are env-only, never in cluster.yaml.

Every command resolves its store from the declared root (a bad root is a
loud invalid_storage_root). Graph-root derivation, the delete executor
(prefix delete via the adapter), the sweep's existence probes, the catalog
payload write/verify/read paths, and the serving snapshot all flow through
ClusterStore — the last raw-fs holdouts for stored state are gone, and the
deny-list gains the rule that keeps it that way.

Tests: default-layout byte-compat, a file:// root relocating the entire
cluster (ledger+catalog+graphs under the new root, nothing under the config
dir, serving snapshot follows), invalid-root validation. 98 in-crate + 9
failpoints + full workspace gate green. The s3:// flavor lands with PR 3's
gated RustFS e2e.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 14:28:04 +03:00
..
omnigraph feat(storage): versioned CAS, conditional replace, and prefix delete on StorageAdapter 2026-06-11 05:09:45 +03:00
omnigraph-cli feat(cluster): port the storage backend to the engine StorageAdapter 2026-06-11 14:11:14 +03:00
omnigraph-cluster feat(cluster): the storage: root — state, catalog, and graph roots relocatable 2026-06-11 14:28:04 +03:00
omnigraph-compiler release: v0.6.2 2026-06-09 15:59:59 +02:00
omnigraph-policy feat(policy): from-source twins for the policy loaders 2026-06-11 05:09:45 +03:00
omnigraph-server feat(cluster): port the storage backend to the engine StorageAdapter 2026-06-11 14:11:14 +03:00