oneai_workflow/lib.rs
1//! # OneAI Workflow
2//!
3//! Workflow compiler, DAG, validator, executor, StateGraph (cyclic graph support),
4//! and StateGraphExecutor (cyclic graph execution).
5//!
6//! A workflow is a declarative specification of multi-step agent behavior.
7//! It defines steps, dependencies, tool bindings, and execution policies.
8//! The workflow is compiled into a DAG (for acyclic workflows) or a
9//! StateGraph (for cyclic workflows like ReAct loops) and executed.
10//!
11//! P2-2: GraphActionExecutor trait enables AgentLoop integration —
12//! LlmInfer/ToolCall nodes can delegate to the AgentLoop's full pipeline
13//! (hooks, permission, domain pack, tool definitions, context assembly).
14
15//! # Stability
16//!
17//! This crate follows the [Rust API Guidelines](https://rust-lang.github.io/api-guidelines/).
18//! All public enums are annotated `#[non_exhaustive]` where appropriate to prevent
19//! downstream breakage when new variants are added. Structs use constructor methods
20//! for creation — direct struct literal construction is supported within this crate
21//! but may be restricted in future versions via `#[non_exhaustive]`.
22//!
23//! Breaking changes will be signaled by a minor version bump (0.x → 0.y).
24//! Patch versions (0.x.y → 0.x.z) are always backward-compatible.
25
26pub mod compiler;
27pub mod config;
28pub mod dag;
29pub mod executor;
30pub mod render;
31pub mod state_executor;
32pub mod state_graph;
33pub mod validator;
34
35pub use compiler::*;
36pub use config::*;
37pub use dag::*;
38pub use executor::*;
39pub use render::*;
40pub use state_executor::*;
41pub use state_graph::*;
42pub use validator::*;