1pub mod cas;
6pub mod compat;
7pub mod deploy;
8pub mod deploy_runner;
9pub mod diff;
10pub mod domain;
11pub mod event_adapter;
12pub mod gate;
13pub mod git;
14pub mod hitl_controls;
15pub mod memory;
16pub mod memory_context;
17pub mod metrics;
18pub mod multi_repo;
19pub mod obs;
20pub mod orchestration;
21pub mod parallel;
22pub mod planning_autonomy;
23pub mod publish_gate;
24pub mod quality_guardrails;
25pub mod recording;
26pub mod release_registry;
27pub mod replay;
28pub mod reporting;
29pub mod role_orchestration;
30pub mod sandbox;
31pub mod self_healing;
32pub mod telemetry;
33pub mod tooling;
34pub mod trace_artifact;
35
36pub use domain::{
37 validate_run_event, AgentSpec, AgentSpecFields, AivcsError, DeterministicEvalRunner,
38 EvalCaseResult, EvalRunReport, EvalSuite, EvalTestCase, EvalThresholds, Event, EventKind,
39 Release, ReleaseEnvironment, ReleasePointer, Result, Run, RunStatus, ScorerConfig, ScorerType,
40 SnapshotMeta, ValidationError,
41};
42
43pub use event_adapter::{subscribe_ledger_to_bus, LedgerHandler};
44
45pub use git::{capture_head_sha, is_git_repo};
46
47pub use memory::{DecisionRecorder, DecisionRecorderConfig};
48
49pub use oxidized_state::{
50 BranchRecord, CommitId, CommitRecord, DecisionRecord, MemoryProvenanceRecord, MemoryRecord,
51 ProvenanceSourceType, SnapshotRecord, SurrealHandle,
52};
53
54pub use nix_env_manager::{
55 generate_environment_hash, generate_logic_hash, is_attic_available, is_nix_available,
56 AtticClient, AtticConfig, FlakeMetadata, HashSource, NixHash,
57};
58
59pub use semantic_rag_merge::{
60 diff_memory_vectors, resolve_conflict_state, semantic_merge, synthesize_memory,
61 AutoResolvedValue, MemoryConflict, MergeResult, VectorStoreDelta,
62};
63
64pub use cas::fs::FsCasStore;
65pub use cas::{CasError, CasStore, Digest};
66pub use compat::{
67 evaluate_compat, CompatRule, CompatRuleSet, CompatVerdict, CompatViolation, PromoteContext,
68};
69pub use deploy::{deploy_by_digest, DeployResult};
70pub use deploy_runner::{DeployByDigestRunner, DeployRunOutput};
71pub use diff::lcs_diff::{
72 diff_tool_calls as diff_tool_calls_lcs, DiffSummary, ParamChange,
73 ToolCallChange as LcsToolCallChange, ToolCallEntry,
74};
75pub use diff::state_diff::{
76 diff_run_states, diff_scoped_state, extract_last_checkpoint, ScopedStateDiff, StateDelta,
77 CHECKPOINT_SAVED_KIND,
78};
79pub use orchestration::{
80 default_role_templates, deterministic_role_order, merge_role_outputs, validate_handoff,
81 validate_parallel_roles, AgentRole, HandoffValidationError, MergeConflict,
82 MergeConflictStrategy, MergeOutcome, ParallelPlanError, RoleHandoff, RoleOutput, RoleTemplate,
83};
84pub use parallel::{
85 fork_agent_parallel, BranchStatus, ForkResult, ParallelConfig, ParallelManager,
86};
87pub use planning_autonomy::{
88 compute_progress, decompose_goal_to_dag, evaluate_replan, schedule_next_ready_tasks, EpicPlan,
89 ExecutionDag, GoalPlan, PlanTask, PlanTaskStatus, PlanningError, ProgressReport,
90 ReplanDecision, ReplanPolicy, ReplanReason, SchedulerConstraints, TaskPlan,
91};
92
93pub use diff::node_paths::{
94 diff_node_paths, extract_node_path, NodeDivergence, NodePathDiff, NodeStep,
95};
96pub use diff::tool_calls::{diff_tool_calls, ParamDelta, ToolCall, ToolCallChange, ToolCallDiff};
97pub use gate::{
98 evaluate_gate, CaseResult, EvalReport, GateRule, GateRuleSet, GateVerdict, Violation,
99};
100pub use recording::GraphRunRecorder;
101pub use release_registry::ReleaseRegistryApi;
102pub use replay::{find_resume_point, replay_run, verify_spec_digest, ReplaySummary, ResumePoint};
103pub use reporting::{
104 render_diff_summary_md, write_diff_summary_md, write_eval_results_json, DiffSummaryArtifact,
105 EvalCaseResultArtifact, EvalResultsArtifact, EvalSummaryArtifact,
106};
107
108pub use trace_artifact::{
109 read_trace_artifact, write_trace_artifact, RetentionPolicy, RunTraceArtifact,
110};
111
112pub use quality_guardrails::{
113 evaluate_quality_guardrails, read_guardrail_artifact, release_block_reason,
114 write_guardrail_artifact, CheckFinding, CheckResult, GuardrailArtifact, GuardrailCoverage,
115 GuardrailPolicyProfile, GuardrailVerdict, QualityCheck, QualitySeverity, ReleaseAction,
116};
117pub use role_orchestration::error::{RoleError, RoleResult};
118pub use role_orchestration::executor::{
119 execute_roles_parallel, token_from_result, ParallelRoleConfig, RoleRunResult,
120};
121pub use role_orchestration::merge::{merge_parallel_outputs, MergedRoleOutput, RoleConflict};
122pub use role_orchestration::roles::HandoffToken;
123pub use role_orchestration::router::{
124 build_execution_plan, validate_handoff_sequence, ExecutionPlan, RoleStep,
125};
126pub use self_healing::{
127 classify_failure, execute_recovery_loop, read_recovery_artifact, write_recovery_artifact,
128 FailureClass, FailureSignal, RecoveryAction, RecoveryAttemptResult, RecoveryDecision,
129 RecoveryLog, RecoveryOutcome, RecoveryPolicy,
130};
131
132pub use sandbox::{
133 evaluate_tool_request, execute_with_controls, CircuitBreaker, PolicyVerdict, SandboxConfig,
134 SandboxError, SandboxResult, ToolExecutionResult, ToolPolicyRule, ToolPolicySet, ToolRequest,
135};
136
137pub use memory::{
138 assemble_context, compact_index, CompactionPolicy, CompactionResult, ContextBudget,
139 ContextItem, ContextWindow, DecisionRationale, IndexQuery, IndexResult, MemoryEntry,
140 MemoryEntryKind, MemoryError, MemoryIndex, MemoryResult, RationaleEntry, RationaleOutcome,
141};
142
143pub use memory_context::{
144 estimate_tokens, read_memory_context_artifact, write_memory_context_artifact, AssembledContext,
145 CompactionPolicy as MemoryContextCompactionPolicy,
146 CompactionResult as MemoryContextCompactionResult, CompactionStrategy, ContextAssembler,
147 ContextSegment, DecisionImportance, DecisionRationale as MemoryContextDecisionRationale,
148 MatchStrategy, MemoryContextArtifact, MemoryEntry as MemoryContextEntry, MemoryHit,
149 MemoryIndex as MemoryContextIndex, MemoryQuery, RationaleLedger,
150};
151pub use metrics::METRICS;
152pub use multi_repo::{
153 BackportExecutor, BackportOutcome, BackportPolicy, BackportTask, CIHealthView, CiAggregator,
154 CiHealthReport, CiRunFetcher, CrossRepoGraph, MultiRepoError, MultiRepoExecutionPlan,
155 MultiRepoOrchestrator, MultiRepoResult, ReleaseProvenance, ReleaseSequencer, RepoCIStatus,
156 RepoDependency, RepoDependencyGraph, RepoExecutionPlan, RepoHealth, RepoHealthStatus, RepoId,
157 RepoNode, RepoReleaseStatus, RepoReleaser, RepoStep, SequenceItem, SequenceOutcome,
158 SequencePlan,
159};
160pub use obs::{
161 emit_event_appended, emit_gate_evaluated, emit_run_finalize_error, emit_run_finished,
162 emit_run_started, RunSpan,
163};
164pub use telemetry::init_tracing;
165pub use tooling::{
166 JsonFieldSchema, PolicyAction, PolicyMatrix, SchemaStage, ToolAdapter, ToolCallStatus,
167 ToolCapability, ToolExecutionConfig, ToolExecutionError, ToolExecutionReport, ToolExecutor,
168 ToolInvocation, ToolRegistry, ToolSpec, ToolTelemetry,
169};
170
171pub use hitl_controls::{
172 apply_intervention, evaluate_checkpoint, read_hitl_artifact, submit_vote, write_hitl_artifact,
173 ApprovalCheckpoint, ApprovalPolicy, ApprovalRule, ApprovalVote, CheckpointStatus,
174 DecisionSummary, ExplainabilitySummary, HitlArtifact, HitlError, HitlResult, Intervention,
175 InterventionAction, RiskTier, VoteDecision,
176};
177
178pub const VERSION: &str = env!("CARGO_PKG_VERSION");