1#![deny(missing_docs)]
12
13mod canonical;
14mod channel;
15mod config;
16mod delivery;
17mod dialect;
18mod encoder;
19mod error;
20mod id;
21mod input;
22mod limits;
23mod loop_types;
24mod safe;
25mod tool;
26mod transaction;
27
28pub use canonical::{
29 BoundaryKind, CanonicalUnit, CanonicalUnitEvent, CanonicalUnitSnapshot, DiagnosticKind, FlowId,
30 InterpretationEnd, InterpretationEndKind, InterpretationId, InterpreterOutputEvent, LaneId,
31 ModelDiagnostic, ParagraphBoundary, ParagraphKind, SemanticBoundary, SourceTimeObservation,
32 StructuralAtom, StructureKind, TextChannel, TextSentence, TokenCount, ToolActionEvent,
33 ToolActionId, ToolExecutionState, ToolRequestState, ToolResultState, ToolTerminalOutcome,
34 UnitId, UnitState, UsageObservation,
35};
36pub use channel::{
37 send_and_retain_allowed, ChannelCapabilities, ChannelCapabilityError, ChannelDescriptor,
38 ChannelKind, ExchangeMode, McpConfigurationCapability, McpReachability, SessionMode,
39 ToolExecutionMode,
40};
41pub use config::{
42 merge_effective_config, ChannelDefaults, ConfigError, ConfigOption, ContinuationPolicy,
43 EffectiveConfig, ExtensionKey, InvocationConfig, OptionPolicy, ReasoningEffort, ResponseFormat,
44 SessionConfig, VersionedExtension,
45};
46pub use delivery::{
47 estimate_event_bytes, transaction_delivery, CompletionPublishResult, DeliveryConfigError,
48 DeliveryLimits, EventEnqueueError, TransactionCompletionReceiver, TransactionCompletionSender,
49 TransactionDelivery, TransactionEventReceiver, TransactionEventSender, TransactionReceiver,
50};
51pub use dialect::{DialectBinding, DialectDescriptor, DialectFamily, DialectNegotiation};
52pub use encoder::{
53 ContinuationContext, EncodedExchange, EncodingError, ExchangeInputPolicy, InitialEncodeRequest,
54 OutboundDialectEncoder, ToolContinuationEncodeRequest,
55};
56pub use error::{ConnectorError, ConnectorErrorKind, InterpreterError, InterpreterErrorKind};
57pub use id::{
58 validate_identity_string, ChannelId, ConnectionId, ExchangeId, ExternalSessionId,
59 GrokSessionId, IdentityError, MonoloopRunId, RequestId, SessionId, SessionKey, ToolId,
60 ToolName, TransactionId, MAX_IDENTITY_BYTES,
61};
62pub use input::{
63 estimate_canonical_input_bytes, user_text_input, CanonicalAssistantToolCall, CanonicalInput,
64 CanonicalMessage, InputValidationError, TextPart,
65};
66pub use limits::{
67 ChannelLimits, ConnectorLimits, ExtensionLimits, InputLimits, InterpretationLimits,
68 LimitsError, ToolLimits, TransactionLimits, TransportBufferLimits,
69};
70pub use loop_types::{
71 LoopEnd, LoopEndKind, LoopError, LoopErrorKind, LoopId, LoopLimits, LoopOutputEvent, LoopScope,
72 OutboundToolOutcome, OutboundToolResult, ToolExecutionId, ToolUnavailableReason,
73};
74pub use safe::{DiagnosticCode, SafeDiagnostic, SafeDiagnosticError};
75pub use tool::{
76 CanonicalToolError, CanonicalToolOutput, CanonicalToolResult, CanonicalToolResultOutcome,
77 JsonSchema, ToolCall, ToolCallContext, ToolCompletion, ToolContractError, ToolExecutionClass,
78 ToolLifecycleEvent, ToolOutputContract, ToolRuntimeError, ToolSpec, ToolStartError,
79 ToolSuccessContract,
80};
81pub use transaction::{
82 AdmissionError, AdmissionErrorKind, AdmissionReceipt, CancellationReason,
83 CancellationReasonCode, CleanupFailureCode, CleanupStatus, CompletionCallback,
84 CompletionDelivery, CompletionDeliveryError, EventDelivery, EventDeliveryError,
85 EventDeliveryOutcome, FnCompletionCallback, FnEventSink, Shutdown, ShutdownDisposition,
86 ShutdownReport, ShutdownSnapshot, ShutdownWaitOutcome, TerminalEventDelivery,
87 TerminationDisposition, TerminationMode, TerminationReason, TerminationReasonCode,
88 TransactionCompletion, TransactionDiagnostic, TransactionEnd, TransactionEndEvent,
89 TransactionEndKind, TransactionEvent, TransactionEventPayload, TransactionEventSink,
90 TransactionSelector, TransactionSubmitRequest, TransactionUsage,
91};
92
93pub use bytes::Bytes;