Skip to main content

converge_domain/
lib.rs

1// Copyright 2024-2025 Aprio One AB, Sweden
2// Author: Kenneth Pernyer, kenneth@aprio.one
3// SPDX-License-Identifier: MIT
4// See LICENSE file in the project root for full license information.
5
6//! Domain-specific agents and examples for Converge.
7//!
8//! This crate contains applied use cases that demonstrate
9//! Converge's capabilities in real domains.
10//!
11//! # Available Domains
12//!
13//! - [`growth_strategy`]: Growth strategy pipeline for market analysis
14//! - [`meeting_scheduler`]: Meeting scheduling with constraint satisfaction
15//! - [`resource_routing`]: Resource allocation and routing optimization
16//! - [`release_readiness`]: Engineering dependency and release quality gates
17//! - [`supply_chain`]: Supply chain re-planning with parallel optimization tracks
18//! - [`inventory_rebalancing`]: Multi-region inventory rebalancing with forecasting
19//! - [`strategic_sourcing`]: Strategic sourcing and vendor selection
20//! - [`catalog_enrichment`]: Catalog update and enrichment from multiple feeds
21//! - [`crm_account_health`]: CRM account health and growth strategy
22//! - [`compliance_monitoring`]: Continuous compliance monitoring
23//! - [`hr_policy_alignment`]: HR policy alignment and organizational understanding
24//! - [`sdr_sales`]: SDR sales qualification and outreach
25//! - [`travel`]: Travel pack pipeline with mockable booking flow
26//!
27//! # Workflow Blueprints
28//!
29//! - [`blueprints`]: Pre-configured workflow templates combining multiple packs
30
31pub mod ask_converge;
32pub mod blueprints;
33pub mod catalog_enrichment;
34pub mod compliance_monitoring;
35pub mod crm_account_health;
36pub mod domain_invariants;
37pub mod drafting;
38pub mod drafting_llm;
39pub mod eval_agent;
40pub mod evals;
41pub mod form_filler;
42pub mod growth_strategy;
43pub mod hr_policy_alignment;
44pub mod inventory_rebalancing;
45pub mod meeting_scheduler;
46pub mod packs;
47pub mod patent_research;
48pub mod release_readiness;
49pub mod resource_routing;
50pub mod sdr_sales;
51pub mod strategic_sourcing;
52pub mod supply_chain;
53pub mod travel;
54
55pub mod llm_utils;
56pub mod retrieval;
57
58// LLM-enabled versions of use cases
59pub mod catalog_enrichment_llm;
60pub mod compliance_monitoring_llm;
61pub mod crm_account_health_llm;
62pub mod growth_strategy_llm;
63pub mod hr_policy_alignment_llm;
64pub mod inventory_rebalancing_llm;
65pub mod meeting_scheduler_llm;
66pub mod strategic_sourcing_llm;
67
68#[cfg(test)]
69mod stress_tests;
70
71pub use growth_strategy::{
72    // Invariants
73    BrandSafetyInvariant,
74    // Agents
75    CompetitorAgent,
76    EvaluationAgent,
77    MarketSignalAgent,
78    RequireEvaluationRationale,
79    RequireMultipleStrategies,
80    RequireStrategyEvaluations,
81    StrategyAgent,
82};
83
84pub use ask_converge::{AskConvergeAgent, GroundedAnswerInvariant, RecallNotEvidenceInvariant};
85pub use drafting::{DraftingComposerAgent, DraftingResearchAgent};
86pub use drafting_llm::setup_llm_drafting;
87
88pub use form_filler::{
89    CompletenessAgent, FieldMappingAgent, FillPlanAgent, FormSchemaAgent, NormalizationAgent,
90    ProposalEmitterAgent, RiskClassifierAgent,
91};
92
93pub use meeting_scheduler::{
94    // Agents
95    AvailabilityRetrievalAgent,
96    ConflictDetectionAgent,
97    // Invariants
98    RequireParticipantAvailability,
99    RequirePositiveDuration,
100    RequireValidSlot,
101    SlotOptimizationAgent,
102    TimeZoneNormalizationAgent,
103    WorkingHoursConstraintAgent,
104};
105
106pub use resource_routing::{
107    // Agents
108    ConstraintValidationAgent,
109    FeasibilityAgent,
110    // Invariants
111    RequireAllTasksAssigned,
112    RequireCapacityRespected,
113    RequireValidDefinitions,
114    ResourceRetrievalAgent,
115    SolverAgent,
116    TaskRetrievalAgent,
117};
118
119pub use release_readiness::{
120    // Agents
121    DependencyGraphAgent,
122    DocumentationAgent,
123    PerformanceRegressionAgent,
124    ReleaseReadyAgent,
125    // Invariants
126    RequireAllChecksComplete,
127    RequireMinimumCoverage,
128    RequireNoCriticalVulnerabilities,
129    RiskSummaryAgent,
130    SecurityScanAgent,
131    TestCoverageAgent,
132};
133
134pub use supply_chain::{
135    // Agents
136    ConsolidationAgent,
137    CostEstimationAgent,
138    DemandSnapshotAgent,
139    InventoryStateAgent,
140    // Invariants
141    RequireCompleteAssessments,
142    RequireFeasiblePlan,
143    RequireSLACompliance,
144    RiskAssessmentAgent,
145    RouteGenerationAgent,
146    SLAValidationAgent,
147    SupplierStatusAgent,
148};
149
150pub use inventory_rebalancing::{
151    // Agents
152    CapacityConstraintAgent,
153    FinancialImpactAgent,
154    ForecastAgent,
155    InventoryAgent,
156    RebalanceDecisionAgent,
157    // Invariants
158    RequireBudgetCompliance,
159    RequireCompleteForecasts,
160    RequireSafetyStock,
161    SalesVelocityAgent,
162    TransferOptimizationAgent,
163};
164
165pub use strategic_sourcing::{
166    // Agents
167    ComplianceAgent,
168    ESGScoringAgent,
169    PriceBenchmarkAgent,
170    // Invariants
171    RequireCompleteAssessments as RequireSourcingAssessments,
172    RequireCompliantVendor,
173    RequireShortlistCompliance,
174    RiskModelAgent,
175    SourcingStrategyAgent,
176    SupplierDiscoveryAgent,
177    VendorRankingAgent,
178};
179
180pub use catalog_enrichment::{
181    // Agents
182    AttributeNormalizationAgent,
183    CategoryInferenceAgent,
184    DeduplicationAgent,
185    FeedIngestionAgent,
186    PricingValidationAgent,
187    ProductReadyAgent,
188    // Invariants
189    RequireNoDuplicates,
190    RequireRequiredAttributes,
191    RequireValidPrices,
192    SchemaInvariantAgent,
193};
194
195pub use crm_account_health::{
196    // Agents
197    ActionPrioritizationAgent,
198    ChurnRiskAgent,
199    // Invariants
200    RequireChurnActionPlan,
201    RequireCompleteAnalysis,
202    RevenueTrendAgent,
203    SupportTicketAgent,
204    UpsellOpportunityAgent,
205    UsageSignalAgent,
206};
207
208pub use compliance_monitoring::{
209    // Agents
210    EvidenceCollectorAgent,
211    PolicyRuleAgent,
212    RegulationParserAgent,
213    RemediationProposalAgent,
214    // Invariants
215    RequireEvidenceForAllRegulations,
216    RequireRemediationPlans,
217    ViolationDetectorAgent,
218};
219
220pub use hr_policy_alignment::{
221    // Agents
222    AcknowledgementTrackingAgent,
223    AlignmentStatusAgent,
224    EscalationAgent,
225    ManagerFollowUpAgent,
226    MeetingCompletionAgent,
227    PolicyDistributionAgent,
228    // Invariants
229    RequireAllAcknowledgements,
230    RequireHighRiskRoleConfirmation,
231    RequireManagerFollowUp,
232    UnderstandingSignalAgent,
233};
234
235pub use sdr_sales::{
236    // Agents
237    ChannelDecisionAgent,
238    FitEvidenceAgent,
239    MarketScanAgent,
240    MessageHypothesisAgent,
241    NeedEvidenceAgent,
242    // Note: DeduplicationAgent is exported from catalog_enrichment, not sdr_sales
243    // Invariants
244    RequireExplicitQualification,
245    RequireMessageStrategy,
246    RequireQualificationEvidence,
247    RequireValidICP,
248    RiskEvidenceAgent,
249    SignalExtractionAgent,
250    TimingEvidenceAgent,
251};
252
253pub use patent_research::{
254    ClaimChartGeneratorAgent, ClaimRiskFlaggerAgent, ClaimSeedAgent, ClaimStrategyAgent,
255    ClaimSupportInvariant, DisclosureCompletenessInvariant, DraftPackAssemblerAgent,
256    EnrichmentLoopAgent, EvidenceCitationInvariant, InventionCaptureAgent, InventionSummaryAgent,
257    MatterContextAgent, MatterPolicyAgent, PatentAlertAgent, PatentApprovalRecorderAgent,
258    PatentClaimsAnalyzerAgent, PatentEvidenceCollectorAgent, PatentLandscapeAnalyzerAgent,
259    PatentOperatorPlannerAgent, PatentQueryBuilderAgent, PatentReportAssemblerAgent,
260    PatentSearchExecutorAgent, PatentSubmissionAgent, PriorArtShortlistAgent,
261    RemoteBackendRestrictedInvariant, SpecDraftAgent, SupportMatrixAgent,
262};
263
264pub use domain_invariants::{AuditTrailRequired, AuthorityRequired};
265
266// LinkedIn Research Pack re-exports
267pub use packs::linkedin_research::{
268    ApprovalRecorderAgent, ApprovalRequiredForExternalActionInvariant, DossierBuilderAgent,
269    EvidenceRequiresProvenanceInvariant, EvidenceValidatorAgent, LinkedInTargetDiscoveryAgent,
270    NetworkPathRequiresVerificationInvariant, PathVerifierAgent, SignalIngestAgent,
271};
272
273// Knowledge Pack re-exports (patent-related)
274pub use packs::knowledge::PatentEvidenceHasProvenanceInvariant;
275
276// Pack-specific evals
277pub use evals::{
278    AccessComplianceEval,
279
280    AssetTrackingEval,
281
282    AttributionCompletenessEval,
283
284    // Trust Pack
285    AuditCoverageEval,
286    // Growth Marketing Pack
287    CampaignHypothesisQualityEval,
288    // Knowledge Pack
289    ClaimProvenanceEval,
290    // Legal Pack
291    ContractSignatureEval,
292    DashboardSourceEval,
293
294    EscalationAppropriatenessEval,
295
296    ExperimentMetricsEval,
297
298    // Product Engineering Pack
299    FeatureOwnershipEval,
300    // Money Pack
301    InvoiceAccuracyEval,
302    IpAssignmentComplianceEval,
303
304    // Customers Pack
305    LeadConversionQualityEval,
306    // Original evals
307    LeadQualificationQualityEval,
308    MeetingScheduleFeasibilityEval,
309    // Data Metrics Pack
310    MetricDefinitionQualityEval,
311    // People Pack
312    OnboardingCompletenessEval,
313    // Partnerships Vendors Pack
314    PartnerAgreementCoverageEval,
315    PatentClaimChartEvidenceEval,
316    PatentDraftPackCompletenessEval,
317    // Patent Research Pack
318    PatentShortlistCoverageEval,
319    PaymentReconciliationEval,
320
321    PipelineVelocityEval,
322
323    // Delivery Pack
324    PromiseFulfillmentEval,
325    RbacEnforcementEval,
326
327    ReleaseRollbackReadinessEval,
328
329    ScopeCreepDetectionEval,
330
331    // Procurement Assets Pack
332    SpendApprovalComplianceEval,
333    StrategyDiversityEval,
334
335    // Ops Support Pack
336    TicketResolutionEval,
337    VendorAssessmentCompletenessEval,
338};