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