agtrace_sdk/
types.rs

1//! Type re-exports for the SDK.
2//!
3//! This module re-exports all types that SDK consumers (like the CLI) need to work with.
4//! By centralizing these re-exports, we maintain a stable API boundary while allowing
5//! internal crate refactoring without breaking SDK clients.
6
7// ============================================================================
8// Event Types (from agtrace-types)
9// ============================================================================
10
11// Note: agtrace-types re-exports everything at the top level from domain, event, and tool modules
12pub use agtrace_types::{
13    // Event types
14    AgentEvent,
15    // Session assembly types (moved from agtrace-engine)
16    AgentSession,
17    AgentStep,
18    AgentTurn,
19    EventPayload,
20    // Payload types
21    ExecuteArgs,
22    FileEditArgs,
23    FileReadArgs,
24    MessagePayload,
25    // Domain types
26    ProjectHash,
27    ProjectScope,
28    ReasoningPayload,
29    SessionMetadata,
30    SessionStats,
31    StepStatus,
32    StreamId,
33    // Token usage types
34    TokenInput,
35    TokenOutput,
36    TokenUsagePayload,
37    ToolCallPayload,
38    ToolExecution,
39    ToolKind,
40    ToolResultPayload,
41    TurnMetrics,
42    TurnStats,
43    UserMessage,
44    UserPayload,
45};
46
47// ============================================================================
48// Session Analysis Types (from agtrace-engine)
49// ============================================================================
50
51pub use agtrace_engine::{
52    // Token usage types
53    ContextLimit,
54    ContextWindowUsage,
55    // Extension traits
56    SessionAnalysisExt,
57    // Analysis types
58    SessionDigest,
59    TokenCount,
60};
61
62// ============================================================================
63// Export Strategy (from agtrace-engine)
64// ============================================================================
65
66pub use agtrace_engine::export::ExportStrategy;
67
68// ============================================================================
69// Diagnostics Types (from agtrace-engine)
70// ============================================================================
71
72pub use agtrace_engine::{DiagnoseResult, FailureExample, FailureType};
73
74// ============================================================================
75// Index Types (from agtrace-index)
76// ============================================================================
77
78pub use agtrace_index::SessionSummary;
79
80// ============================================================================
81// Runtime Types (from agtrace-runtime)
82// ============================================================================
83
84pub use agtrace_runtime::{
85    // Operations Types
86    CheckResult,
87    CheckStatus,
88    // Configuration Types
89    Config,
90    // Init Types
91    ConfigStatus,
92    CorpusStats,
93    // Watch/Monitor Types
94    DiscoveryEvent,
95    // Event Filters
96    EventFilters,
97    IndexProgress,
98    InitConfig,
99    InitProgress,
100    InitResult,
101    InspectContentType,
102    InspectLine,
103    InspectResult,
104    PackResult,
105    ProjectInfo,
106    ProviderConfig,
107    ScanOutcome,
108    // Session Filter
109    SessionFilter,
110    SessionState,
111    StatsResult,
112    StreamEvent,
113    StreamHandle,
114    TokenLimit,
115    TokenLimits,
116    WatchService,
117    WorkspaceEvent,
118};
119
120// ============================================================================
121// Provider Types (from agtrace-providers)
122// ============================================================================
123
124// Note: Provider adapter functions are now internal implementation details.
125// External users should use SystemClient::check_file() instead.