Expand description
Declarative no-code workflow substrate.
Lowers a WorkflowDef (authored as data) into a
klieo_flows::Flow via compile. State is a shared JSON object
(the “envelope”) threaded through every node; each node reads one named
field as its input and writes its output to another.
Modules§
- test_
support - In-process doubles and an
AgentContextharness shared by the crate’s unit tests and its integration tests. Gated behindcfg(test)or thetest-supportfeature; never part of a production build.
Structs§
- Agent
Config - Data-driven agent configuration.
- Condition
- A single condition read off an envelope field.
- EdgeDef
- A routing edge from one node to another.
- NodeDef
- One node in the workflow graph.
- Registry
- The set of primitives a workflow is permitted to reference. Anything not registered here is rejected at compile time — this IS the authz boundary for no-code workflows.
- Workflow
Def - A complete workflow definition.
- Workflow
RunRecord - Immutable provenance binding minted at run-start: which workflow (id + version) ran, the content hash it pinned, and the author that launched it. Emit into a provenance chain so a run is attributable to an exact definition.
Enums§
- Compile
Error - Why a
crate::WorkflowDefcould not be compiled into a flow. - Node
Kind - Node behaviour. Tagged by
kind. - Op
- Comparison operators. Deliberately not Turing-complete.
Functions§
- canonical_
json_ bytes - Serialise
valueto canonical JSON bytes: object keys are recursively sorted, so logically-equal values produce byte-identical output regardless of key insertion order (and regardless of whether serde_json’spreserve_orderfeature is enabled anywhere in the build). - compile
- Compile a workflow into a runnable flow. Pure — no I/O.
- run_
record - Mint the run-start provenance binding for
def. The author is fixed to a system label — not caller-supplied — so attribution cannot be forged through this call.