Skip to main content

reddb_server/storage/graph/
mod.rs

1//! Graph storage stable contract surface — issue #744.
2//!
3//! Red UI's graph explorer must be able to request a bounded subgraph
4//! (by collection, center node or filter, traversal depth, and result
5//! limit) and render the response without reaching into
6//! `engine::graph_store`, `unified::graph_dsl`, or the runtime's
7//! `RuntimeGraphNeighborhoodResult` / `RuntimeGraphEdge` types. Those
8//! internals churn faster than the UI contract can.
9//!
10//! This module is the stable mediation layer: plain-data request and
11//! response types in [`viewport`] that Red UI binds to. Wiring the
12//! runtime call that turns a [`viewport::ViewportRequest`] into a
13//! populated [`viewport::Viewport`] over the live graph store is a
14//! follow-up slice in PRD #735 — the contract types in this module are
15//! what those wiring slices target and do not change when they land.
16//!
17//! Today it ships exactly one submodule:
18//!
19//! - [`viewport`] — request / response contract plus pure
20//!   [`viewport::Viewport::from_visits`] builder that applies limit-
21//!   based truncation deterministically.
22
23pub mod viewport;