1#![cfg_attr(test, allow(clippy::unwrap_used, clippy::expect_used))]
2mod execution;
32pub use execution::configured_max_tool_concurrency;
33mod machine;
34pub mod native_async;
35mod phase_effects;
36#[cfg(test)]
37mod test_fixtures;
38mod turn;
39
40pub(crate) use everruns_contracts::CapabilityRef;
43pub(crate) use everruns_contracts::user_facing_error::{
44 ErrorDisclosure, UserFacingError, UserFacingErrorContext, codes as user_facing_error_codes,
45};
46pub(crate) use everruns_contracts::{
47 ChatDriver, CompactInputItem, ProviderEndpoint, ProviderOpaqueContext, compact,
48 driver_registry, error, llm_retry, model_profiles, tool_types, typed_id,
49};
50pub(crate) use everruns_core::{
51 ANTHROPIC_COMPACTION_CHECKPOINT_FORMAT_VERSION, COMPACTION_CHECKPOINT_FORMAT_VERSION,
52 CompactionCheckpoint, CompactionCheckpointPayload, CompactionCheckpointStore, DecisionsService,
53 EgressService, McpToolInvoker, MessageQuery, ProactiveCompactionAttempt, RuntimeAgent,
54 UtilityLlmService, annotation_hook, capabilities, compaction_policy, connection_services,
55 delegation_services, durability, event_emitter, events, execution_loading, file_services,
56 finalized_tool_calls, image_services, llm_conversions, llm_error_hook, localization, message,
57 message_retriever, mount_fs, network_access, output_guardrail, runtime_context, session_files,
58 session_services, session_task, subagent_delegation, tool_context, tool_execution,
59 tool_fingerprint, tool_narration, tools,
60};
61
62pub(crate) mod tool_call_integrity {
63 pub(crate) use everruns_core::{
64 retain_complete_llm_tool_exchanges_for_request, retain_complete_message_tool_exchanges,
65 };
66}
67
68pub use execution::capability_usage_records;
69pub use execution::{
70 ActAtom, ActInput, ActResult, ClientSideToolHook, ConnectionSetupHook, ExecutionContext,
71 InputAtom, InputAtomInput, InputAtomResult, NativeExecutionCounts, OutputHardLimitHook,
72 PostActAction, PostActHook, ReasonAtom, ReasonInput, ReasonResult, ToolApprovalPauseHook,
73 ToolCallResult, has_pending_tool_approval,
74};
75pub use machine::{Execution, ExecutionTransition, TurnExecution};
76pub use phase_effects::{PhaseEffect, PhaseEffectSink};
77pub use turn::{
78 ActOutcome, ActPlan, ActSchedulingFacts, ActivityOutcome, HostFacts, TurnLifecycleEffect,
79 TurnPlan, TurnState, act_pauses_turn, plan_after_act, plan_after_process_input,
80 plan_after_reason, plan_next_turn, reason_schedules_act,
81};