#![deny(missing_docs)]
mod registry;
mod runtime;
mod subscription;
mod tools;
mod transaction;
pub use registry::{
EmptyToolRegistry, ResolveToolRequest, ToolDescriptorRef, ToolRegistry, ToolRegistryError,
ToolResolution,
};
pub use runtime::{
DefaultLoopRuntime, LoopCompletion, LoopControl, LoopHandle, LoopHealth, LoopRunFuture,
StartLoop,
};
pub use subscription::{
CanonicalEventSubscription, DeliveredEvent, SubscriberId, SubscriptionGap,
SubscriptionPublisher, SubscriptionStatus,
};
pub use tools::{
NoToolRuntime, StartToolExecution, ToolExecutionHandle, ToolRuntime, ToolRuntimeError,
ToolRuntimeTerminal,
};
pub use transaction::{
adapt_completion_callback, adapt_event_sink, build_completion, dispatch_ready_tool,
dispatch_ready_tool_cancellable, tool_definitions_from_resolved, validate_tool_completion,
validate_tool_input, AbortableAtYieldHandler, AcpPromptEncoder, AcpPromptWireShape,
AsyncToolHandler, CapabilityToken, ChannelBinding, ChannelRegistry, ControlHoldGate,
DispatchOutcome, DispatchRequest, DispatcherLimits, EmptyBytesEncoder, FinalizerHoldGate,
HeadlessPromptEncoder, HostToolRegistry, HostToolRuntime, ImmediateToolHandler,
InputValidationFailure, IsolatedKillableToolHandler, JoinOnlySpillInject, LedgerEntry,
LifecycleLedger, LinkedToolExecutionHandle, LiveChannel, LostCompletionHandler,
McpBindingState, McpGateway, McpGatewayHandle, McpGatewayLimits, McpInstallError,
McpRequestOwner, McpRouteTable, OpenAiChatCompletionsEncoder, OpenAiEncoderOptions,
OrphanToolPermitSet, OutputValidationFailure, OwnedProcessRegistry, PanicEncoder,
PanicOnStartHandler, PendingMcpBinding, PreparedMcpGateway, ProcessIsolatedToolHandler,
ProcessToolCommand, RegisteredTool, RejectEncoder, ReservationPool, ReservationPoolError,
ResolvedTool, ResolvedToolRegistry, ResolvedToolSet, RuntimeBootstrap, RuntimeConfig,
RuntimeOwner, RuntimeState, SharedToolCapacity, ShutdownTicket, SpawnReject, StartFailHandler,
StartHoldGate, StartedRuntime, StartupError, StoppedGate, SupervisorCommand, TaskClass,
TaskExit, TaskId, TaskSupervisor, TerminalDecision, TerminalProposal, TestTextEncoder,
ToolExecutionCompletion, ToolExecutionControl, ToolHandler, ToolKillHandle,
TransactionMcpHandler, TransactionPhase, TransactionReservations, TransactionRuntimeHandle,
TransactionTaskSpawner, TransactionToolCapacity, TransactionToolDispatcher,
};
pub use monoloop_contracts::{
estimate_event_bytes, transaction_delivery, AdmissionError, AdmissionErrorKind,
AdmissionReceipt, BoundaryKind, CanonicalUnit, CanonicalUnitEvent, CleanupFailureCode,
CleanupStatus, CompletionPublishResult, DeliveryConfigError, DeliveryLimits, EventEnqueueError,
InterpretationEnd, InterpreterOutputEvent, LoopEnd, LoopEndKind, LoopError, LoopErrorKind,
LoopId, LoopLimits, LoopOutputEvent, LoopScope, MonoloopRunId, OutboundToolOutcome,
OutboundToolResult, ShutdownReport, ShutdownSnapshot, ShutdownWaitOutcome,
TerminalEventDelivery, ToolActionId, ToolRequestState, ToolUnavailableReason,
TransactionCompletion, TransactionDelivery, TransactionEndEvent, TransactionReceiver,
TransactionSubmitRequest,
};