conversation_api/execution/
mod.rs1pub mod agent;
7pub mod context;
8pub mod error;
9pub mod event;
10pub mod facade;
11pub mod facade_response;
12pub use facade_response::{FacadeProblem, FacadeResponse, FacadeStatus, ResponseDetail};
13pub mod id;
14pub mod llm;
15pub mod operational_context;
16pub mod storage;
17
18pub use crate::{
19 ConversationSurface, InteractionAnswer, InteractionCard, InteractionKind, InteractionResponse,
20 InteractionTone, PendingInteractionItem,
21};
22pub use agent::{AccessMode, AgentCommand, Interaction, QueuedRun, RunOptions};
23pub use artifact_api::{
24 ARTIFACT_URL_PREFIX, ArtifactKind, ArtifactMetadata, ArtifactReference, ArtifactUri,
25};
26pub use context::{Actor, InvocationContext, Scope};
27pub use error::{ExternalError, ExternalErrorKind};
28pub use event::{
29 AgentEvent, AgentObservation, DurableEvent, EventPublisher, InteractionRequest, Observer,
30};
31pub use facade::{AppFacade, FacadeRequest, FacadeResult, PreparedAction};
32pub use id::{
33 ActionId, ClientId, EventId, MessageId, OperationId, RunId, ScopeId, TenantId, ThreadId, UserId,
34};
35pub use llm::{
36 Completion, CompletionRequest, ContentPart, Continuation, FinishReason, INPUT_AUDIO,
37 INPUT_FILE, INPUT_IMAGE, INPUT_VIDEO, Llm, LlmFailure, Message, MessageRole, ModelCapabilities,
38 ModelConstraints, ModelMode, ModelProfile, TokenUsage, ToolCall, ToolDefinition, ToolEffect,
39 ToolPolicy, UsageSummary, UseCase, input_modality_for_kind, payload_input_modalities,
40};
41pub use operational_context::{
42 ContextGeneration, ContextInvalidation, ContextSource, OperationalContext,
43 OperationalContextDelta,
44};
45pub use storage::{
46 Checkpoint, ClaimNextOutcome, CommitOutcome, HistoryMutation, QueueSnapshot, QueueStore,
47 Revision, RunControl, RunCoordinator, RunLease, RuntimeSnapshot, StoreError, ThreadCommit,
48 ThreadKey, ThreadRecord, ThreadStore,
49};
50
51pub mod wire;
52
53pub(crate) fn deserialize_empty_variant<'de, D>(deserializer: D) -> Result<(), D::Error>
57where
58 D: serde::Deserializer<'de>,
59{
60 #[derive(serde::Deserialize)]
61 #[serde(deny_unknown_fields)]
62 struct Empty {}
63 <Empty as serde::Deserialize>::deserialize(deserializer).map(|_| ())
64}