Expand description
Multi-step Open Responses orchestration loop.
run_response_loop drives a multi-step response from pending to
terminal state. It is a free function over the MultiStepStore and
ToolExecutor traits — both already exist in onwards for other
purposes, so the multi-step path adds no parallel execution
abstraction.
§Wiring
- Storage —
MultiStepStorehandles CRUD + transition + chain walk + assembly. - Tool dispatch —
ToolExecutor::toolsdeclares the tools and theirToolKind;ToolExecutor::executerunsHttp-kind tools.Agent-kind tools cause the loop to recurse into a sub-loop instead of callingexecute. - Model calls — fired directly by the loop using the supplied
reqwest::Clientagainst the configuredUpstreamTarget. No trait abstraction.
This means dwctl’s existing HttpToolExecutor (which already
implements ToolExecutor) plugs straight in — no wrapping, no
adapter, no parallel multi-step trait.
Structs§
- Loop
Config - Configuration for
run_response_loop’s safety caps. - Upstream
Target - Where the loop should send model_call HTTP requests.
Enums§
- Loop
Error - Errors returned by
run_response_loop.
Functions§
- run_
response_ loop - Drive a multi-step Open Responses request to a terminal state.