commons/src/lib.rs
2026-07-20 19:00:12 +02:00

71 lines
2.3 KiB
Rust

pub use chrono::{DateTime, Utc};
pub use mtp::codec::{CommunicationValue, DataValue};
pub use mtp::type_map::{CommunicationType, DataType};
pub use uuid::Uuid;
pub mod agents;
pub mod ai_response;
pub mod conclusion;
pub mod coral;
pub mod enums;
pub mod errors;
pub mod krill;
pub mod mutations;
pub mod project;
pub mod sandbox;
pub mod sync;
pub mod task;
pub mod todo;
pub mod tools;
pub use agents::{
AgentPolicy, AgentPromptConfig, AgentType, ApprovalMode, PlannedAction, SimulationResult,
};
pub use ai_response::{Conversation, Message};
pub use conclusion::{
Artifact, ArtifactType, ConclusionCard, ConclusionMetrics, ConclusionTrigger,
};
pub use coral::{Coral, CoralId};
pub use enums::*;
pub use errors::{ShoalError, ValidationError};
pub use krill::{KrillConfig, KrillDescriptor, KrillId, PodProtocolVersion};
pub use mutations::FileMutation;
pub use project::{Project, ProjectFile, ProjectId, ProjectSettings};
pub use task::{Task, TaskResult};
pub use todo::{Dependency, ToDo};
pub use tools::{
compute_tools_hash, format_tool_error, format_tool_result, format_tools_json,
is_global_tool, is_reef_proxy_tool,
parse_tool_call_blocks, parse_tool_call_stream, tool_definitions, tool_ids_for_agent_type,
ApprovalRequirement, CompositionStep, ContextVisibility, ExecutionContext,
MarketplaceSearchResults, ParsedToolCall, TestAction, ToolComposition, ToolDefinition,
ToolDependency, ToolDocumentation, ToolExample, ToolExecutor, ToolListing, ToolParser,
ToolPlugin, ToolRegistry, ToolState, ToolTest, ToolTestResult, ToolTestSuite,
ToolTestSuiteResult, ToolVersion, GLOBAL_TOOLS, REEF_PROXY_TOOLS,
};
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn typemap_contains_expected_types() {
let tm = mtp::type_map::TypeMap::latest();
assert!(
tm.data_id_enum(DataType::ProjectId).is_some(),
"TypeMap missing ProjectId"
);
assert!(
tm.comm_id_enum(CommunicationType::AuthRequest).is_some(),
"TypeMap missing AuthRequest"
);
assert!(
tm.comm_id_enum(CommunicationType::PasswordAuthRequest).is_some(),
"TypeMap missing PasswordAuthRequest"
);
assert!(
tm.data_id_enum(DataType::DockId).is_some(),
"TypeMap missing DockId"
);
}
}