/**
 * The cadence — the pure finite-state machine that drives a run.
 *
 * This barrel exposes the reducer factory and its supporting fold helpers. A
 * host binds {@link cadence} to a static {@link import("../contract").AgentConfig}
 * to obtain a `(state, signal) => { state, effects }` step function, threads
 * signals through it, and interprets the returned effects. Everything here is
 * pure: no I/O, no awaiting, no mutation of inputs.
 */
export type { Transition, StepFn } from "./reducer";
export { cadence, initialSnapshot } from "./reducer";
export { ZERO_USAGE, addUsage, parseToolArgs, foldBlocks, foldTurn, sealToolArgs, toolCallsOf, } from "./fold";
