Expand description
Harness — tested, packaged, persistent execution loop.
Structs§
- Boxed
Harness - A harness whose strategy generics have been erased into trait
objects. Constructed via
HarnessSpec::into_harnessorHarness::into_boxed. - Budget
Termination - Terminate a run cleanly when a
Budgetis exceeded (FR-18). Holds a sharedSpendLedger(cloneable handle) that the modelCallable’sCostMeterfeeds; on each iteration it checks the budget at its scope and stops the run on overspend instead of letting it burn money. - Harness
- Harness
Ref - Public, type-erased handle to a harness. Implements
Callableso a harness can be plugged in wherever an executable unit is expected (workflow steps, team routing targets, tool slots). - Harness
Spec - Harness
State - Mutable state shared between iterations of a harness loop. Used to
be
Box<dyn Any>in the architecture doc; in v0 it’s just aserde_json::Valueso persistence is trivial. - Iteration
CapTermination - Stop after
capiterations. - Step
Event
Enums§
Traits§
- Callable
- Re-export for convenience: every harness is a
Callable. Anything an agent / workflow / harness can call. Implemented by every executable unit so they’re interchangeable as workflow steps, tool invocations, and team routing targets. - Harness
Dispatch - Object-safe trait that every harness implements. Implementors are
the typed
Harness<L, T>and the fully-erasedBoxedHarness. - Loop
Strategy - Termination
Strategy
Type Aliases§
- Callable
Handle - Re-export for convenience: every harness is a
Callable. Type-erased handle. Crates that need to store heterogeneous callables (registries, workflow steps, tool slots) use this.