1#![allow(clippy::cast_precision_loss)]
8#![allow(clippy::cast_possible_truncation)]
9#![allow(clippy::float_cmp)]
10#![allow(clippy::unused_self)]
11#![allow(clippy::missing_errors_doc)]
12#![allow(clippy::missing_panics_doc)]
13#![allow(clippy::must_use_candidate)]
14#![allow(clippy::return_self_not_must_use)]
15#![allow(clippy::cast_sign_loss)]
16#![allow(clippy::cast_possible_wrap)]
17#![allow(clippy::similar_names)]
18#![allow(clippy::match_same_arms)]
19#![allow(clippy::used_underscore_binding)]
20#![allow(clippy::no_effect_underscore_binding)]
21#![allow(clippy::case_sensitive_file_extension_comparisons)]
22#![allow(clippy::doc_markdown)]
23#![allow(clippy::unnecessary_wraps)]
24#![allow(clippy::items_after_statements)]
25#![allow(clippy::for_kv_map)]
26#![allow(clippy::ref_option)]
27#![allow(clippy::trivially_copy_pass_by_ref)]
28#![allow(clippy::too_many_lines)]
29#![allow(clippy::needless_pass_by_value)]
30#![allow(clippy::map_unwrap_or)]
31#![allow(clippy::struct_field_names)]
32#![allow(clippy::assigning_clones)]
33#![allow(clippy::unreadable_literal)]
34#![allow(clippy::unnecessary_map_or)]
35
36pub mod access_control;
37pub mod ai_evaluator;
38pub mod batch;
39pub mod dashboard;
40pub mod document;
41pub mod error;
42pub mod evaluator;
43pub mod evidence;
44pub mod examples;
45pub mod fraud;
46pub mod github;
47pub mod image_similarity;
48pub mod knowledge_base;
49pub mod llm;
50pub mod model_version;
51pub mod ocr;
52pub mod oracle;
53pub mod plagiarism;
54pub mod presets;
55pub mod profiling;
56pub mod reports;
57pub mod reputation_predictor;
58pub mod service;
59pub mod social;
60pub mod token_analyzer;
61pub mod transcript;
62pub mod utils;
63pub mod verifier;
64
65pub use access_control::{
66 AccessControlManager, AccessTier, AiFeature, CustomAgentConfig, FeatureQuota, TierConfig,
67 TokenHolder,
68};
69pub use ai_evaluator::{
70 AiCommitmentVerifier, AiEvaluator, AiFraudDetector, EvaluatorConfig, FraudCheckRequest,
71 FraudCheckResult, VerificationRequest, VerificationResult,
72};
73pub use batch::{
74 BatchCodeEvaluator, BatchCommitmentVerifier, BatchConfig, BatchFraudDetector, BatchResult,
75};
76pub use dashboard::{
77 ComponentHealth, DashboardMetrics, GrafanaDataPoint, HealthCheckStatus, MetricType,
78 PrometheusMetric, TimeSeriesPoint, to_grafana_format,
79};
80pub use document::{
81 CodeBlock, DocumentFormat, DocumentMetadata, DocumentParser, DocumentQuality, DocumentStats,
82 DocumentStructure, Heading, Image, IssueSeverity, Link, MetadataExtractor, PdfMetadata,
83 PdfParseError, PdfParser, QualityAnalyzer, QualityIssue, TocEntry, TocGenerator,
84};
85pub use error::AiError;
86pub use evaluator::{DefaultEvaluator, EvaluationResult, QualityEvaluator};
87pub use evidence::{EvidenceParser, EvidenceType, ParsedEvidence, Recommendation};
88pub use examples::{
89 AccessControlExample, BasicCodeEvaluationExample, BatchProcessingExample,
90 BudgetManagementExample, CompleteServiceExample, CostOptimizationExample,
91 DashboardIntegrationExample, DeepSeekIntegrationExample, FraudDetectionExample,
92 GeminiIntegrationExample, ImageSimilarityExample, IntegrationExample, KnowledgeBaseExample,
93 ModelVersionManagementExample, OllamaIntegrationExample, OracleConsensusExample,
94 PerformanceProfilingExample, PlagiarismDetectionExample, ReportGenerationExample,
95 ResilienceExample,
96};
97pub use fraud::{
98 CommitmentRecord, ComprehensiveFraudReport, FraudAnalysisInput, FraudAnalysisResult,
99 FraudAnalysisService, FraudDetector, FraudFinding, FraudType, ImageAnalysisResult,
100 ImageManipulationDetector, RelatedAccount, RelationshipType, ReputationGamingDetector,
101 RiskLevel, SybilDetector, TradeRecord, WashTradingDetector,
102};
103pub use github::{
104 Commit, CommitVerification, GitHubClient, GitHubConfig, GitHubVerificationResult,
105 GitHubVerifier, Issue, IssueVerification, PrVerification, PullRequest, Release,
106 ReleaseVerification, Repository, parse_github_url,
107};
108pub use image_similarity::{
109 HashAlgorithm, ImageDatabase, ImageSimilarityDetector, PerceptualHash, SimilarityScore,
110};
111pub use knowledge_base::{KnowledgeBase, KnowledgeDomain, KnowledgeEntry};
112pub use llm::{
113 AlertLevel, AnthropicClient, BudgetAlert, BudgetConfig, BudgetManager, BudgetPeriod, CacheInfo,
114 CacheStats, CachedLlmClient, CachedResponse, ChatMessage, ChatRequest, ChatResponse, ChatRole,
115 CircuitBreaker, CircuitBreakerConfig, CircuitBreakerMetrics, CircuitState, CompletionRequest,
116 CompletionResponse, DeepSeekClient, GeminiClient, HealthCheckConfig, HealthMonitor,
117 HealthStatus, HealthSummary, LlmCache, LlmCacheConfig, LlmClient, LlmClientBuilder,
118 LlmOperation, LlmProvider, LogLevel, MetricsCollector, MetricsSnapshot, ModelInfo,
119 OpenAiClient, OperationTimer, PerformanceSpan, PeriodUsage, ProviderHealth, ProviderMetrics,
120 RateLimitGuard, RateLimiter, RateLimiterConfig, RequestDeduplicator, RetryConfig,
121 RetryExecutor, RetryPolicy, StreamAccumulator, StreamChunk, StreamHandler, StreamResponse,
122 StreamingChatRequest, StreamingChatResponse, StreamingLlmProvider, TieredRateLimiter,
123 TokenUsage, collect_stream, retry_with_backoff,
124};
125pub use model_version::{ModelMetrics, ModelRegistry, ModelVersion, VersionComparison};
126pub use ocr::{
127 BlockType, BoundingBox, ImageAnalyzer, ImageFormat, LlmOcrConfig, LlmOcrProvider, OcrProvider,
128 OcrResult, ScreenshotAnalysis, ScreenshotOcr, TextBlock, TextRegionEstimate,
129};
130pub use oracle::{
131 AiOracle, AutoDecision, BatchLearningResult, ConsensusResult, ConsensusStrategy,
132 FeedbackAnalysis, FeedbackEntry, LearningStats, ModelVote, ModelWeight, OracleConfig,
133};
134pub use plagiarism::{
135 BatchPlagiarismDetector, PlagiarismConfig, PlagiarismDetector, PlagiarismReport,
136 PlagiarismResult, SimilarityDetails, SimilarityMatrix,
137};
138pub use presets::{
139 AccessTierPresets, CostOptimizedPreset, DevelopmentPreset, HighVolumePreset, ProductionPreset,
140};
141pub use profiling::{
142 OperationMetrics, OperationStats, PerformanceProfiler, PerformanceReport, ScopedProfiler,
143};
144pub use reports::{
145 BenchmarkSummary, CostAnalysisReport, FraudSummaryReport, OperationBenchmark,
146 PerformanceBenchmarkReport, ReportFormat, ReportGenerator, ReportType,
147};
148pub use reputation_predictor::{
149 CommitmentPrediction, HistoricalCommitment, Impact, IssuerHistory, IssuerRiskAssessment,
150 NewIssuerInfo, ReputationPredictor, RiskFactor, Trend,
151};
152pub use service::{AiServiceBuilder, AiServiceConfig, AiServiceHub};
153pub use social::{
154 LinkedInPost, LinkedInPostType, SocialDetails, SocialMediaParser, SocialMediaVerifier,
155 SocialPlatform, SocialVerificationResult, TwitterPost, VerificationStatus, VerificationSummary,
156 YouTubeVideo,
157};
158pub use token_analyzer::{
159 CommunityMetrics, HistoricalDataPoint, MarketPrediction, SentimentCategory, SentimentScore,
160 SocialMention, TokenAnalyzer, TrendDirection,
161};
162pub use transcript::{
163 LlmTranscriptAnalyzer, QualityIndicators, SearchResult, TopicMention, TranscriptAnalysis,
164 TranscriptProvider, TranscriptResult, TranscriptSearch, TranscriptSegment, TranscriptService,
165 VideoMetadata, VideoPlatform, YouTubeTranscriptProvider,
166};
167pub use utils::{
168 AggregationStrategy, FraudCheckRequestBuilder, VerificationRequestBuilder, aggregate_scores,
169 calculate_average, calculate_coefficient_of_variation, calculate_consensus, calculate_median,
170 calculate_percentile, calculate_std_dev, calculate_success_rate, calculate_variance,
171 calculate_weighted_average, clamp, combine_quality_originality, confidence_to_risk_level,
172 format_cost, format_duration, format_file_size, format_percentage, format_tokens,
173 is_excellent_score, is_passing_score, normalize_score, retry_with_exponential_backoff,
174 score_difference_percent, score_to_grade, score_to_tier, scores_significantly_different,
175 validate_confidence, validate_model_name, validate_quality_score, validate_temperature,
176 validate_token_count, validate_url,
177};