1#[macro_use]
5mod versioned_blob;
6
7mod action_id;
8mod action_operation;
9mod action_struct;
10mod blob;
11mod diff;
12mod discussion;
13mod hash;
14mod identifiers;
15mod operation_id;
16mod redaction;
17mod risk_signal;
18mod semantic_change;
19mod session;
20mod state_attribution;
21mod state_context;
22mod state_core;
23mod state_provenance;
24mod state_review;
25mod state_visibility;
26mod staleness_core;
27mod structured_conflict;
28mod suggestion_core;
29mod timeline;
30mod tree;
31mod tree_diff;
32mod visibility_tier;
33
34pub use action_id::ActionId;
35pub use action_operation::Operation;
36pub use action_struct::Action;
37pub use blob::Blob;
38pub use diff::{DiffKind, FileChange, FileChangeSet};
39pub use discussion::{
40 Discussion, DiscussionError, DiscussionId, DiscussionResolution, DiscussionTurn,
41 DiscussionsBlob,
42};
43pub use hash::{ChangeId, ChangeIdParseError, ContentHash};
44pub use identifiers::{MarkerName, Scope, ThreadName};
45pub use operation_id::{OperationId, OperationIdParseError};
46pub use redaction::{
47 REDACTION_SIGNING_PAYLOAD_VERSION_TAG, Redaction, RedactionError, RedactionsBlob,
48};
49pub use risk_signal::{
50 MAX_REASON_LEN, ProducerId, RiskSignal, RiskSignalBlob, RiskSignalError, RiskSignalKind,
51 SignalAnchor,
52};
53pub use semantic_change::{ChangeImportance, ModificationKind, SemanticChange};
54pub use session::{Session, SessionSegment, generate_session_id};
55pub use state_attribution::{Agent, Attribution, Principal};
56pub use state_context::{
57 Annotation, AnnotationKind, AnnotationRevision, AnnotationScope, AnnotationStatus, ContextBlob,
58 ContextError, ContextTarget,
59};
60pub use state_core::{
61 SignatureStatus, State, StateSignature, Status, Verification, parse_commit_extension_headers,
62};
63pub use state_provenance::{FileProvenance, LineSpan, Origin, OriginSet, ProvenanceError};
64pub use state_review::{
65 ReviewKind, ReviewScope, ReviewSignature, ReviewSignatureError, ReviewSignaturesBlob,
66 SymbolAnchor, signing_payload,
67};
68pub use state_visibility::{
69 STATE_VISIBILITY_SIGNING_PAYLOAD_VERSION_TAG, StateVisibility, StateVisibilityBlob,
70 StateVisibilityError,
71};
72pub use staleness_core::{
73 StalenessStatus, annotation_status_for_source,
74 annotation_status_for_source_with_symbol_resolver, extract_line_range, resolve_current_symbol,
75};
76pub use structured_conflict::{
77 ConflictError, ConflictResolution, ConflictSide, ConflictSymbol, StructuredConflict,
78};
79pub use suggestion_core::{
80 ContextSuggestion, ContextSuggestionTier, HIGH_SUGGESTION_THRESHOLD,
81 MAJOR_REWRITE_THRESHOLD_PCT, MEDIUM_SUGGESTION_THRESHOLD, SUGGESTION_WINDOW,
82 SuggestionInputs, SuggestionSignal, score_suggestions,
83};
84pub use timeline::{
85 BranchCreatedV1, CursorMovedV1, NativeToolCallRefV1, TIMELINE_OPERATION_SCHEMA_VERSION,
86 TimelineBranchId, TimelineBranchReason, TimelineCodecError, TimelineCursorMoveReason,
87 TimelineLabel, TimelineOperationBodyV1, TimelineOperationEnvelope, TimelineOperationId,
88 TimelineOperationIdParseError, TimelineOperationKind, TimelineStepId, TimelineToolCallStatus,
89 TimelineToolPayloadMetadata, ToolCallFinishedV1, ToolCallStartedV1,
90};
91pub use tree::{
92 EntryType, FileMode, Tree, TreeEntry, TreeError, validate_name as validate_tree_entry_name,
93};
94#[cfg(feature = "async-source")]
95pub use tree_diff::diff_trees_visit_async;
96pub use tree_diff::{diff_trees, diff_trees_visit};
97pub use visibility_tier::VisibilityTier;