1pub mod agent;
7pub mod compliance;
8pub mod composition;
9pub mod debug;
10pub mod discovery;
11pub mod dna;
12pub mod dr;
13pub mod group;
14pub mod ha;
15pub mod history;
16pub mod messaging;
17pub mod migration;
18pub mod multiregion;
19pub mod orchestration;
20pub mod policy;
21pub mod pool;
22pub mod resource;
23pub mod security;
24pub mod template;
25pub mod versioning;
26
27pub use agent::{
28 Agent, AgentError, AgentId, AgentState, StateTransition, TransitionHook, TransitionResult,
29};
30pub use compliance::{
31 AuditEntry, AuditLogger, AuditQuery, CompliancePolicy, ComplianceReport, DataClassification,
32 EventType, PolicyChecker, PolicyViolation, PrivacyConfig, PrivacyControl, PrivacyManager,
33 ReportGenerator, ReportType, RetentionPolicy,
34};
35pub use composition::{
36 Behavior, BehaviorComposite, BehaviorContext, BehaviorId, BehaviorRegistry, BehaviorResult,
37 ClosureBehavior, HealthCheckBehavior, LoggingBehavior, MetricsBehavior,
38};
39pub use debug::{
40 Breakpoint, DebugCommand, DebugContext, DebugSession, DebuggerConfig, ExecutionTracer,
41 InspectionQuery, InspectionResult, MemoryProfiler, RemoteDebugger, StateInspector, TraceEvent,
42 TraceFilter, WatchExpression,
43};
44pub use discovery::{
45 Capability, DiscoveryError, DiscoveryQuery, DiscoveryResult, HealthCheck,
46 HealthStatus as DiscoveryHealthStatus, LoadBalancer, LoadBalancingStrategy,
47 Location as DiscoveryLocation, ServiceRegistration, ServiceRegistry,
48};
49pub use dna::Dna;
50pub use dr::{
51 Backup, BackupConfig, BackupManager, BackupSchedule, BackupScheduler, BackupStrategy,
52 BackupType, RecoveryConfig, RecoveryManager, RecoveryPlan, RecoveryPoint, RecoveryStrategy,
53 RecoveryTarget, VerificationConfig, Verifier,
54};
55pub use group::{
56 AgentGroup, GroupConfig, GroupCoordinator, GroupError, GroupId, GroupMember, GroupRegistry,
57 GroupResult, GroupRole, GroupState,
58};
59pub use ha::{
60 ClusterHealth, ClusterHealthMonitor, FailoverConfig, FailoverCoordinator, FailoverDecision,
61 FailoverEvent, FailoverPolicy, FailoverState, FailoverStrategy, HealthConfig as HAHealthConfig,
62 HealthMetric, HealthStatus as HAHealthStatus, HealthThreshold, LeaderElection, LeaderElector,
63 LeaderState, NodeHealth, QuorumConfig, QuorumDecision, QuorumPolicy, QuorumVote, QuorumVoter,
64 ReplicationConfig, ReplicationManager, ReplicationState, ReplicationStrategy, StateReplica,
65 VoteRequest, VoteResponse,
66};
67pub use history::{
68 AgentHistory, HistoryConfig as HistoryTrackerConfig, HistoryTracker, StateHistoryEntry,
69 StateStatistics,
70};
71pub use messaging::{Mailbox, Message, MessageBus, MessagingError, Priority, Topic};
72pub use multiregion::{
73 CrossRegionSync, GeoRouter, LatencyMap, Region, RegionConfig, RegionDeployment, RegionManager,
74 RegionStatus, RouteDecision, RoutingPolicy, RoutingStrategy, SyncConfig, SyncManager,
75 SyncStatus,
76};
77pub use orchestration::{
78 Deployment, DeploymentSpec, DeploymentStatus, DeploymentStrategy, Node, OrchestrationError,
79 Orchestrator, PlacementConstraint, ResourceRequirements, ScalingPolicy, Scheduler,
80};
81pub use policy::Policy;
82pub use pool::{AgentPool, PoolConfig, PoolStats};
83pub use resource::{
84 Anomaly, AnomalyConfig, AnomalyDetector, AnomalyType, HistoryConfig, MonitorSummary,
85 QuotaEnforcer, QuotaViolation, ResourceHistory, ResourceManager, ResourceMonitor,
86 ResourcePrediction, ResourcePredictor, ResourceQuota, ResourceRate, ResourceSnapshot,
87 ResourceUsage,
88};
89pub use security::{
90 AgentIdentity, AttestationValidator, AuthChallenge, AuthResponse, AuthToken, Authenticator,
91 Capability as SecurityCapability, CapabilityAttestation, EncryptedSnapshot, EncryptionKey,
92 IdentityProvider, PublicIdentity, SandboxConfig, SandboxExecutor, SandboxViolation,
93 SecurityContext, StateEncryptor,
94};
95pub use template::{AgentTemplate, TemplateBuilder, TemplateError, TemplateId, TemplateRegistry};
96pub use versioning::{
97 ABTestConfig, ABTestDeployment, ABTestStats, CanaryConfig, CanaryDeployment, CanaryStats,
98 RollingUpdateConfig, RollingUpdateStrategy, Version, VersionDeployer, VersionError,
99 VersionMetadata, VersionRegistry,
100};
101
102use thiserror::Error;
103
104#[derive(Debug, Error)]
105pub enum CellError {
106 #[error("Agent execution failed: {0}")]
107 ExecutionFailed(String),
108 #[error("Migration failed: {0}")]
109 MigrationFailed(String),
110 #[error("Invalid state: {0}")]
111 InvalidState(String),
112}
113
114#[cfg(test)]
115mod tests {
116 use super::*;
117
118 #[test]
119 fn test_agent_creation() {
120 let agent = Agent::new(vec![0x00, 0x61, 0x73, 0x6d]);
121 assert!(agent.id().as_bytes().len() == 16);
122 }
123}