Expand description
Pureflow — a flow-based programming (FBP) workflow engine for building concurrent data pipelines.
§Feature flags
| Feature | Enables |
|---|---|
wasm | Wasmtime-backed WASM batch node execution |
introspection | Read-only workflow introspection with JSON serialization |
tracing | tracing crate integration for runtime observability |
arrow | Apache Arrow columnar data support in message payloads |
toml | TOML workflow definition parser |
yaml | YAML workflow definition parser |
full | All of the above |
§Modules
The full API surface of each internal crate is re-exported under a matching module. Use the flat top-level re-exports for the most common items, and reach into the modules for anything more specific.
Modules§
- contract
- Node contract metadata and port-level validation.
- core
- Core traits and contracts for node implementors.
- engine
- Workflow execution engine: run policies, registries, and entry points.
- format
- Workflow definition parsers (JSON always; TOML and YAML behind features).
- runtime
- Low-level async runtime that backs the engine.
- types
- Identifier types shared across Pureflow.
- workflow
- Workflow structure: nodes, edges, and graph validation.
Structs§
- Batch
Node Executor - Node executor adapter for host-owned batch implementations such as WASM.
- Cancellation
Handle - Runtime-owned handle that can request cancellation for shared contexts.
- Cancellation
Token - Read-only cancellation view carried by a node execution context.
- Edge
Definition - Directed connection from one output port to one input port.
- Edge
Endpoint - Static endpoint for one side of a workflow edge.
- Execution
Error - Runtime execution failure from a node.
- Execution
Id - Stable identifier for one workflow execution.
- Lifecycle
Error - Failure while recording or reacting to a lifecycle event.
- Message
Id - Stable identifier for one message envelope.
- Node
Contract - Contract metadata for one node.
- Node
Definition - Static node declaration and its input/output port topology.
- NodeId
- Stable node identifier inside a workflow graph.
- Port
Contract - Contract-side declaration for one node port.
- PortId
- Stable port identifier on a node.
- PortsIn
- Declared input ports available to a node execution boundary.
- Ports
Out - Declared output ports available to a node execution boundary.
- Static
Node Executor Registry - In-memory registry keyed by workflow node identifier.
- Workflow
Definition - Parsed workflow definition independent of runtime execution.
- Workflow
Id - Stable workflow identifier.
- Workflow
RunPolicy - Runtime policy for executing one workflow graph.
- Workflow
RunSummary - Aggregate outcome for one workflow run.
Enums§
- Determinism
- Contract-level determinism declaration.
- Execution
Mode - Declared execution mode for one node contract.
- Identifier
Error - Error returned when an identifier is malformed.
- Packet
Payload - Packet payload carried over runtime ports.
- Port
Direction - Direction of a port in a node’s static topology.
- Pureflow
Error - Shared runtime-facing error for the Pureflow foundation layer.
- Workflow
Terminal State - Terminal state for one workflow run.
- Workflow
Validation Error - Error returned when a workflow graph is structurally invalid.
Traits§
- Node
Executor - Async node interface for the first runtime skeleton.
Functions§
- run_
workflow_ with_ registry_ policy_ summary - Execute the workflow through a registry with an explicit run policy.
- run_
workflow_ with_ registry_ summary - Execute the workflow by resolving one executor for each node from a registry.
Type Aliases§
- Port
Packet - Default packet payload for the first channel-backed port surface.
- Result
- Shared result type for runtime-facing APIs.