1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
//! Graph building, compilation, and topology validation
//!
//! This module provides the core graph construction API for Juncture.
//! It includes:
//! - [`StateGraph`]: Builder for constructing executable graphs
//! - [`CompiledGraph`]: Optimized, validated graph for execution
//! - [`TopologyValidator`]: Ensures graph structure is valid
//! - [`TopologyError`]: Validation failure details
//!
//! # Examples
//!
//! ```ignore
//! use juncture_core::{StateGraph, State, Node, IntoNode};
//!
//! struct MyState;
//! impl State for MyState { type Update = MyStateUpdate; }
//! struct MyStateUpdate;
//!
//! // Build a simple graph
//! let mut graph = StateGraph::<MyState>::new();
//! graph.add_node_simple("process", |state: MyState| async move {
//! Ok(MyStateUpdate)
//! });
//! graph.set_entry_point("process");
//! graph.set_finish_point("process");
//!
//! // Compile and validate
//! let compiled = graph.compile()?;
//! # Ok::<(), juncture_core::graph::TopologyError>(())
//! ```
pub use ;
pub use ;
pub use RemoteGraph;
pub use TopologyError;
// Rust guideline compliant 2026-05-19